Lesstep
Azure DevOps Services・Git・2026年10月28日に確認

Git Credential Manager 3.0 と Azure Repos:何が変わり、どう戻すか

Git Credential Manager 3.0.0 は2026年9月24日に出ました。リリースノートには Azure Repos について3つの変更があります。個人用アクセス トークン(PAT)を作る代わりに OAuth トークンでサインインする、OS のサインインのブローカーを既定で使う、Visual Studio のアプリでなく専用の Microsoft Entra アプリとしてサインインする、の3つです。IntelliJ IDEA・Rider などの JetBrains IDE はパソコンに入っている Git を動かすので、IDE の中の Git にも当てはまります。

自分に来ているか

git credential-manager --version
使っているもの2026年10月28日の版
Windows・Git for Windows に付いてきた Git Credential Manager2.x。Git for Windows 2.56.0(4)(2026年10月26日)までのリリースノートで、最後に名前が出るのは v2.9.0
Windows・Git Credential Manager を単独で入れた(たとえば Bitbucket の11月30日の変更のため)3.0.x。単独で入れた方が、同梱の方より優先されます
macOS・Homebrew(git-credential-manager の cask)3.0.2
Linux・.NET ツール入れた版

対象は Azure DevOps Services(dev.azure.com と *.visualstudio.com)です。Azure DevOps Server には Git Credential Manager の汎用の提供者が使われる(Azure Repos のコードのコメント)ので、下の3つの変更はどれも当たりません。

3.0 で変わったこと

3.0 より前3.0 から元に戻すには
組織ごとに個人用アクセス トークンを作っていたMicrosoft ID の OAuth トークン。使っている間は自動で更新され、Visual Studio と共有git config --global credential.azreposCredentialType pat
ブローカーは Windows だけ・自分で有効にしたときだけWindows・macOS・Linux で、使えるところでは既定でブローカーgit config --global credential.msauthUseBroker false
Visual Studio のアプリとしてサインインGit Credential Manager 専用の Entra アプリとしてサインインgit config --global credential.azreposUseLegacyClientId true(一時しのぎの位置づけ)

環境変数なら GCM_AZREPOS_CREDENTIALTYPE=pat・GCM_MSAUTH_USEBROKER=false・GCM_AZREPOS_USE_LEGACY_CLIENTID=true です。マネージド ID・サービス プリンシパル・ワークロード ID フェデレーションのサインインは、アプリの変更の影響を受けないとノートにあります。

更新のあとサインインが通らないとき

新しいアプリがクライアント構成の誤りとして断られると、Git Credential Manager は次のように出します。

Authentication using the new GCM Entra application failed. To retry this command with the legacy Entra application, set 'credential.azreposUseLegacyClientId' to 'true' in Git configuration.

(新しい GCM の Entra アプリでの認証に失敗しました。旧 Entra アプリでこのコマンドをやり直すには、Git の設定で 'credential.azreposUseLegacyClientId' を 'true' にしてください。)

自分では元に戻りません。旧アプリで1回だけ試すには:

git -c credential.azreposUseLegacyClientId=true fetch

これで通ったら、元の失敗を報告してほしいとリリースノートにあります。旧アプリは macOS と Linux ではブローカーを使えません。テナントで登録済みのアプリしかサインインできないようにしているなら、Git Credential Manager のソースにあるアプリケーション ID は d735b71b-9eee-4a4f-ad23-421660877ba6(新)と 872cd9fa-d31f-45e0-9eab-6e460a02d1f1(旧)です。

credential.msauthFlow=embedded にしていたなら、auto・system・devicecode のどれかに変えます。Windows の埋め込みのサインイン画面は 3.0 で無くなりました。

ブローカーがデバイスの登録を求める前に

ブローカーの説明は、Git Credential Manager では制御できないこととして2つを挙げています。

macOS のブローカーには Company Portal アプリと登録済みのデバイスが、Linux には対応する Intune の構成・GNOME のデスクトップ・Microsoft Edge が要り、画面の無い環境や WSL では使えません。使えないところでは、ブラウザかデバイス コードでサインインします。

アカウントが違う

OAuth トークンでは、組織ごとに選んだアカウントを Git Credential Manager が覚えています(ユーザーとトークン)。

git-credential-manager azure-repos list
git-credential-manager azure-repos unbind <組織名>

unbind のあと、次の Git のコマンドでサインインし直しを求められます。Azure DevOps が TF401444 を返すなら、組織がそのアカウントをまだ知りません(見るところ)。

スクリプトと古い Windows

IntelliJ IDEA と Rider で Azure DevOps のプルリクエストを

Azure DevOps Pull Requests は、Lesstep が作っている JetBrains IDE(2024.1 以降)と Android Studio のプラグインです。自分のレビューを待っているプルリクエストを IDE のツールウィンドウに並べます。Azure DevOps Services でも Azure DevOps Server でも使えます。Azure DevOps の API へは、自分の個人用アクセス トークンか Azure CLI のサインイン(az login)でつなぎ、Git Credential Manager は通りません。Git そのもの(pull・push・チェックアウト)は、これまでどおりパソコンの Git と資格情報ヘルパーを使います。レビューの受け箱は無料、投票・コメント・完了は Pro(30日間の無料試用つき)です。画面は日本語です。

JetBrains Marketplace で入れる

Azure DevOps・Visual Studio・Intune・Microsoft Entra は Microsoft Corporation の商標、IntelliJ IDEA と Rider は JetBrains s.r.o. の商標です。このページは Microsoft・JetBrains・Git Credential Manager のプロジェクトのいずれとも提携しておらず、承認も受けていません。

ほかに:全組織向けの個人用アクセス トークンの廃止 · az repos pr と Azure CLI のサインイン · English