0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

メモ githubとvscodeで開いたdocker container

Last updated at Posted at 2022-02-15

gitはコンテナ外で使うの?
コンテナ内で使うの?
コンテナ内で良さそうです。(→sshで秘密鍵を使うと、コンテナ内からは見えなくてはまりました。)

gitの参考
https://qiita.com/Kenta-Okuda/items/c3dcd60a80a82147e1bf#3-%E5%88%9D%E6%9C%9F%E8%A8%AD%E5%AE%9A
https://qiita.com/shizuma/items/2b2f873a0034839e47ce

インストール後のユーザー登録(githubのどこにpushするのか設定)

を参考にgithubのユーザー名とメアドを登録する。
コンテナに入る前の端末で操作。
git config --global user.name "名前"
git config --global user.email "メアド"

git config -l で設定情報の表示
user.name=
user.email=
が表示されることを確認する。

コンテナ内でも

このあと、vscodeでコンテナ内の端末から
git config -l で確認。
ユーザー名等表示されることを確認。表示されなければ
コンテナをリビルドすると設定が反映されていた。
Dockerfileやdocker-compose.ymlにgitの記述をしていないので、vscodeかvscodeの拡張がいい具合に情報を渡していると思う。

コンテナ内で、gitの拡張を利用するならdevcontainer.jsonに記述する。
"extensions": ["ms-python.python","mhutchie.git-graph"]

コンテナ内で流用される、元環境

コンテナをビルドした際に、元環境の ~.gitconfigがコンテナの同位置にコピーされる。
~/.ssh フォルダは秘密鍵はコピーされずにknown_hostsだけがコピーされている。このため、sshアクセスは失敗する。httpsアクセスする必要がある。
コンテナ内でのフォルダの移動もVScodeのファイル->フォルダを開くから可能。

更新を無視するファイル

.gitignore というテキストファイルに*.jpgなど(複数時一行ごと)記載すれば、変更が無視され、アップロードも行われない。

テキストファイルの文字コード

秀丸で作ったテキストファイルをpushしてgithubのHPで確認したら、文字化けしていた。UTF-8で保存することで文字化け解消。

認証情報

httpアクセスの場合、
パスワードの代わりのトークンをgithubのサイトで作成
さらに、以下を参考に.netrcを作成すれば毎回ユーザーIDとパスワードを聞かれなくてすむ。

~/.netrc
machine github.com
login username
password this_is_pass

machineって、何かと思ったけど、「リモートマシンの名前」らしい。
https://linuxjm.osdn.jp/html/netkit/man5/netrc.5.html
ちなみに.netrcには自動ログインの情報を記述できるようで、W&B(wandb)などのログイン情報を記述することもできる。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?