BEACHSIDE BLOG

Azure と GitHub と C# が好きなエンジニアの個人メモ ( ・ㅂ・)و ̑̑

GitHub Desktop で Azure DevOps と認証する(ついでに GitLab と Bitbucket も)

Desktop ツールはあまり使わないので昨年自作したメイン PC には Source Tree と Git Kraken を気持ち程度に入れてたんですが、なんとなく GitHub Desktop も使いたい機運があったのでインストールすることに。

私の場合、GitHub の他に Azure DevOps でもソースを管理しているので、GitHub Desktop で認証しようとしたのですが、うっかり Azure DevOps のサインインのアカウントを入れて認証エラーになって「あーはいはい PAT ね」ってなったので、認証方法をメモしておこうかって気分になりました。やってきましょう♪

セットアップ

インストール

GitHub Desktop 自体は公式のサイトからインストーラーをダウンロードしてインストールすればよいです。

desktop.github.com

GitHub アカウントで Sign in

GitHub Desktop をインストールしたら起動しましょう。GitHub アカウントを使って GitHub の repo を操作することが多いはずなので GitHub アカウントのサインインしておきましょう。

GitHub Desktop の上部にあるメニュー File > Options を開きます。

f:id:beachside:20210513151125p:plain

Account > Sign in をクリックして自身の GitHub Account でサインインしておけばOKです。デフォルトのブラウザーが起動してサインインしてくれるのでいい感じです。

f:id:beachside:20210513151232p:plain

あと最初に気にするとしたら git config の設定くらいでしょうか。私の場合 GitHub のアカウントとは別のアカウントで操作することが多いので変えてるため設定を気にしているだけですが。

これは 先ほど開いた Options の中の Git から確認できます。

f:id:beachside:20210513151708p:plain

これで GitHub の repo とのやり取りはできるようになりました。

私の場合、Azure DevOps も使っているのでその認証ができるようにしていきます。

Azure DevOps の認証

Azure DevOps とつなげるには認証の設定をしていきましょう。M365 とかでもあるあるな Personal Access Token (PAT) の設定が必要になります。

PAT の生成

まずはつなげたい(認証したい)Azure DevOps にサインインして、画面右上の自分のアカウントのアイコンをクリックし(①)、・・・ をクリック(②)して、User settings をクリックします(③)。

f:id:beachside:20210514045827p:plain

Personal access token をクリックします。

f:id:beachside:20210514042655p:plain

Personal Access Tokens の画面が表示されますので、New Token をクリックして PAT を作成します。 f:id:beachside:20210514043253p:plain

PAT 生成の画面が表示されたら、まずは上部にある Name、Organization、Expiration を適宜入力します。Expiration (有効期限)は最大で一年くらいしか設定できません。有効期限が切れそうになるとメールの通知が来ますので更新する感じです。

次に Scopes のエリアは、Custom DefinedCode に Read & Write の権限を付与します。ほかの権限は不要です。Create ボタンをクリックすると PAT が生成されます。

f:id:beachside:20210514043156p:plain

生成されたら以下の画面がでますので、PAT の値をメモしておきましょう。

f:id:beachside:20210514043849p:plain

GitHub Desktop から Azure DevOps に認証

GitHub Desktop を開いて repo を clone したり、clone 済みだったら GitHub Desktop で開いて fetch とかすれば認証をしようとします。そうすると以下図のように Authentication failed の画面が表示されます。

Username には Azure DevOps にサインインする際のアカウント、Password には先ほど生成した PAD の値を入力して Save and retry をクリックすれば、(入力した内容に間違いがなければ)認証完了です。

f:id:beachside:20210514044019p:plain

余談: GitLab での認証

GitLab は個人的に使ってないのです、ちょっと古い(?)設定方法の参考リンクを付けておきます。

(どっかに新しいドキュメントあるのかもですが、興味ないので調べてもいません)

余談: Bitbucket での認証

Bitbucket も個人的に使ってないので、これまた古い設定方法の参考リンクを付けておきます。

おわりに

基本的にはコマンドしか使わんのですが、GitHub 好きなので知見を広めるためにこの公式の Desktop ツールも使い倒したいなぁと思ってる今日この頃です。