Gitローカル環境のアカウント・認証情報設定

2022-04-09

Git は分散型バージョン管理システムの定番です。
この記事では、Git ローカル環境のアカウント・認証情報の設定方法について記載します。

Git 入門内容については以下の記事を参照してください。

アカウント

Git のローカル環境に対してアカウント情報の設定を行います。
なお、複数アカウント存在する場合は、 git config --local でクローンしたリポジトリ毎の設定を忘れないようにしましょう。

グローバル

git コマンドに対するグローバルな設定です。
ローカル設定がある場合はそちらが優先されます。

# 設定
$ git config --global user.name <githubアカウント>
$ git config --global user.email <メアド>
$ git config --global http.sslverify false

# 確認
% git config --global --list

ローカル

クローンしたリポジトリ単位で有効な設定です。
設定されていない項目はグローバルもしくはデフォルトが有効になります。

# 設定
$ git config --local user.name <githubアカウント>
$ git config --local user.email <メアド>
$ git config --local http.sslverify false

# 確認
% git config --local --list

認証

git コマンドを打つ度に認証情報を聞かれるのは煩わしいです。
ここでは、都度 ID/Password を入力しなくて済む認証情報の設定方法について記載します。
なお、 プロトコルは https 前提とします。
以下の方法があります。

  • osxkeychain(Macの場合)
  • Git-Credential-Manager-for-Windows(Windowsの場合)
  • .netrc(Linuxの場合)

osxkeychain

credential helperosxkeychain helper を利用する方法です。
git credential-osxkeychain コマンドで使えるかを確認できます。

$ git credential-osxkeychain
usage: git credential-osxkeychain <get|store|erase>

上記のように表示されれば利用できます。
ヘルパーの設定を以下のように行います。

$ git config --global credential.helper osxkeychain

上記は git clone するときの https://<username>@<FQDN>/~ 単位で認証情報を記憶してくれるため、 git clone する際は以下のようにアカウント情報を付与しましょう。

# 凡例
$ git clone https://<username>@<FQDN>/<repository-username>/<repository-name>.git

# Github の場合
$ git clone https://<username>@github.com/<repository-username>/<repository-name>.git

Mac では認証情報は「キーチェーンアクセス」に保存されます。

Git-Credential-Manager-for-Windows

Windows の場合は Git-Credential-Manager-for-Windows を利用します。

> choco install git-credential-manager-for-windows

以下の設定も確認・実施しておきましょう。

# 確認
> git config --global --list
# credential.helper=manager っていうのがあればOK、なければ以下実施してください

# 設定
> git config --global credential.helper manager

初回パスワード入力時に Internet Explorer などと同じ場所にアクセストークンが保存され、以後はパスワード入力が不要になります。

.netrc

パスワードを素で記述するためセキュリティ的には心配ですが、一応記載しておきます。

$ cat >> ~/.netrc <<EOF
machine github.com
login <githubアカウント>
password <パスワード>
EOF
$ chmod 600 ~/.netrc

Github の認証

Github は 2021 年 8 月 13 日より Basic 認証による Git アクセスが廃止となっています。( 参考
そのため、個人アクセストークンの設定が必要です。( 参考

個人アクセストークン

個人アクセストークンは以下の方法で取得・使用してください。

  1. Web で Github にログインします
  2. 設定画面を開きます
  3. Generate new token をクリックします
  4. noteにトークンのわかりやすい名前を記入します
  5. 権限を設定 ( repo だけ選択しとけば大丈夫です)
  6. [Generate token] をクリックします
  7. トークンをコピーします (ページを離れると参照不可になるので注意してください)
  8. これまでのパスワードの代わりに使用します

おすすめ書籍

おすすめ記事