Help us understand the problem. What is going on with this article?

GitHub+2段階認証+SourceTreeの環境で毎回パスワードを聞かれないようにする方法

前置き

新しい環境でSourceTreeを使うとき、毎回パスワードを聞かれるのを止めるのどうやるんだっけ・・・となるので、それを解決するためのまとめになります。

やりたいこと

SourceTreeでクローンやフェッチをすると毎回パスワードを聞かれるのを止めたい。

前提条件

  • SourceTreeでGitHubを使う
  • GitHubの2段階認証を有効にしている
  • GitHubが推奨しているHttpsを使いたい
  • GitHubのアクセストークンは発行済み状態

環境

  • macOS Mojave 10.14.4
  • SourceTree 3.2.1

手順

基本的な手順はGitHub公式に載っています。
https://help.github.com/en/articles/caching-your-github-password-in-git

ざっくり言えば、キーチェーンにパスワードを保存する設定に変えれば良いとのことです。

「Xcode Command Line Tools」のインストール

「Xcode Command Line Tools」が入ってない場合はインストールします。
ダウンロードは https://developer.apple.com/download/more/ からできます。AppleIDが必要です。

$ git credential-osxkeychain

のコマンドが通ることを確認します。

キーチェーンに保存する設定

以下のコマンドを叩きます。成功しても特に何か表示されることはありません。

git config --global credential.helper osxkeychain

SourceTreeでクローンする

アカウントの環境設定

SourceTreeの環境設定を開き、アカウントタブを選択します。
以下の設定内容でアカウントを追加します。

ホスト:GitHub
認証タイプ:Basic
ユーザー名:適当でもいいみたい(?)
パスワード:GitHubのアクセストークンを入力
プロトコル:HTTPS

クローンする

初回クローンするときに、キーチェーンにアクセスするためのログインパスワードを聞かれるので入力します。(パスワード無しなら聞かれないと思います)
これでパスワードがキーチェーンに保存されるので、クローンやフェッチをしてもパスワードは聞かれなくなります。

…それでもまだパスワードを聞かれる場合

キーチェーンやSourceTreeに正しくないパスワードが保存されている場合があるようです。
この場合、正しいパスワードを入力しても変更されないみたいです。
そのため、キーチェーンアクセスから "github" を削除したり、SourceTreeのアカウントを一度削除してから、↑の手順を行えば解決しました。

参考URL

https://stackoverflow.com/questions/38489022/sourcetree-keeps-asking-for-github-password
https://stackoverflow.com/questions/11067818/how-do-you-reset-the-stored-credentials-in-git-credential-osxkeychain

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away