😽
SourcetreeがGitHubのプライベートリポジトリを読み込めない場合の対処方法
いつの頃からかSourcetreeでGitHubのプライベートリポジトリを読み込めなくなってしまった。今回、この症状を解消したのでメモ。
環境
- macOS 12.1
- Sourcetree 4.1.5(241)
情報
sourcetree does not list github private repository
で検索するとATLASSIANのコミュニティでスレッドが見つかる。そこから辿ると下記のページに辿り着いた。
このページの中ほどにある方法で解決できる。
- Go to https://github.com/settings/tokens
- Click "Generate new token"
- Input token description e.g. "Sourcetree Mac Token", select "repo" checkbox, and click "Generate token"
- Copy the generated token
- Add your GitHub account to Sourcetree, but now rather than using OAuth, select Basic authentication
- Input your username
- Paste the generated token as password
今回はこの方法を行ってみた。
実際の手順
- GitHubのページで右上のアイコンをクリックしてSettingsを選択
- 左のメニュー一番下のDeveloper settingsを選択
- 表示された画面左にあるメニューからPersonal access tokensを選択
- Generate new tokenボタンをクリック
- 表示される画面で下記の情報を入力
Note にはどの用途で使うトークンなのか後でわかる様に一応入力
Expiration には有効期限を入力。デフォルトでは30日なので用途に合わせて。無期限にするとトークン一覧の画面で赤く注意が表示される。
Select scopes で必要なパーミションをチェックする。基本的にrepoがあれば良い。
- 入力が終わったら一番下にあるGenerate tokenをクリックしてトークンを作成する
- 作成したトークンが表示されるのでこれをコピーする
このトークン情報は画面遷移すると二度と表示されなくなるので注意。下の画面はもう一度同じ画面を表示した時のもの。トークンは表示されずにトークンの情報が表示される。
- 次にSourcetreeを起動して環境設定画面でアカウントを選択したら左下の追加…ボタンをクリック
- ダイアログには下記の情報を入力もしくは選択
ホスト GitHub
認証タイプ Basic
ユーザー名 GitHubでのユーザ名
パスワード 手順7でコピーしたPersonal access token
プロトコル SSH
- 入力したら保存ボタンをクリック
- アカウントが作成されているのを確認。
以上の手順を行ってからリモートリポジトリを確認するとプライベートなリポジトリも表示されるようになっている。
最後に
いつの頃から表示されなくなったのかは良く覚えていないが、ATLASSIANのコミュニティを見ると2018年かららしい。自分の場合は調査するのが面倒だったのでSourcetreeは使わなくなったのだが今回色々とあって使えるようにしてみた。
XcodeやPyCharmはほぼ何もしない状態で(覚えてないだけ?)プライベートリポジトリにもアクセスできるようになっているので、Sourcetreeも面倒な設定なしにプライベートリポジトリにアクセスできるようになると嬉しい。
Discussion