gitでパスワードを保存する
httpsアクセスの際、githubへのアクセスにはパスワード or personal access token(二段階認証を設定している場合)が必要になる。
デフォルトでは、アクセスの際に毎回入力が求められる。
credential.helper コマンドでローカルに認証情報を保存することで、以降の入力が不要になる。
目次
credential.helperの保存モード
- casheモード
- 認証情報が一定時間メモリに保存される
- デフォルトは15分だが、変更可能
- storeモード
- 認証情報をテキストファイルに保存する
- 永続的な保存が可能だが、平文でパスワードが保存される
- osxkeychainモード
- Macを使っている場合にOS のキーチェーンに認証情報がキャッシュされる
- 暗号化され、永続的に保存される
- wincredモード
- windowsを使っているときに, Mac OSと似た仕組みで保存可能
- windowsを使っているときに, Mac OSと似た仕組みで保存可能
cashモード
git config --global credential.helper cache
タイムアウト時間を変更したい場合
# タイムアウト時間を3600秒に設定
git config --global credential.helper 'cache --timeout=3600'
storeモード
トークンを入力したあとに、以下を実行する。
git config --global credential.helper store
デフォルトでは~/.git-credentialsに保存される。保存先を変更したいとき
git config --global credential.helper store --file ~/.hoge-credentials
デフォルトでは永続的に保存される。有効期限の設定も可能
[credential]
helper = store --file /mnt/thumbdrive/.git-credentials
helper = cache --timeout 30000
osxkeychainモード
git config --global credential.helper osxkeychain