記事一覧 Windows の Git をアップデートする方法 winget で他のアプリの更新と整理も
コーディング

Windows の Git をアップデートする方法 winget で他のアプリの更新と整理も

Windows の Git をアップデートする方法 winget で他のアプリの更新と整理も
Windows で使っている Git を、新しい版に更新する手順を紹介します。
Bitbucket を https で使用している場合は、2026年11月30日までに、Git Credential Manager(GCM)も新しくしておかないと、push/pull が出来なくなります。
後半では、winget(ウィンゲット)を使用して、他のアプリもまとめて更新する方法と、使わなくなったアプリを整理する方法を掲載しています。
使うコマンドは、最後のまとめに一覧にしています。

Git を更新する理由

Windows で使う Git(Git for Windows)は、脆弱性(安全上の問題)が見つかるたびに、新しい版が出ています。
時々更新しておくと安心です。

Bitbucket を https で使用している場合は、Git のログインを受け持つ Git Credential Manager(GCM)も、Git とは別に新しくします。
古い GCM のままだと、2026年11月30日から、Bitbucket へのログインと push/pull が出来なくなります(Git Credential Manager の更新も必要な場合)。

今の版を確かめる

今の Git の版は、PowerShell か Git Bash で次のコマンドを実行すると分かります。
PowerShell/Git Bash
git --version
git version 2.56.0.windows.4 のように出ます。
2.56.0 が Git の版で、windows.4 は、それを基にした Windows 版の4回目です。
最新の版かどうかは、git update-git-for-windows を実行すると分かります(コマンドで更新する)。

Git を更新する

Git を更新する方法は、次の3つです(どれで更新しても、入る Git は同じです)。
Git Bash/VS Code など、Git を使っているアプリは、閉じてから更新します。
途中で「このアプリがデバイスに変更を加えることを許可しますか?」という画面が出たら、「はい」を押します。

コマンドで更新する

PowerShell で次のコマンドを実行します。
Git Bash は全て閉じる
更新が始まると、VS Code の中のものも含めて、開いている Git Bash の画面が全て閉じます。
Git Bash で動かしているものがあれば、先に終わらせておきます。
PowerShell
git update-git-for-windows
新しい版がある時は、「Download and install … [N/y]?」(ダウンロードして入れますか)と出るので、y を打って Enter を押します。
既に最新の版なら、「Up to date」と出て終わります。

winget で更新する

winget(winget とは)で更新する時は、PowerShell で次のコマンドを実行します。
PowerShell
winget upgrade --id Git.Git -e
Git.Git は winget での Git の名前(ID)で、-e(--exact)は、ID が完全に一致するものだけを選ぶ指定です。
新しい版が無い時は、更新するものが無いと出て終わります。
winget の Git.Git は、Git for Windows の開発元が管理しているものではありません(Git の公式サイトの案内)。

公式サイトのインストーラーで更新する

Git の公式サイトの Windows のダウンロードのページ から、インストーラーを入れ直しても更新できます。
普通のパソコンは「Git for Windows/x64 Setup」を、ARM の CPU のパソコンは「Git for Windows/ARM64 Setup」を選びます。
前に選んだ設定は引き継がれるので、そのまま「Next」で進めます。

Git Credential Manager の更新も必要な場合

Git Credential Manager とは

Git Credential Manager(GCM)は、Git が GitHub や Bitbucket に https で繋ぐ時に、ログインを受け持つ道具です(Git for Windows を入れると、一緒に入ります)。
GCM がログインの情報を Windows に預けるので、ログインするのは初めの1回だけで済みます。

2026年11月時点の情報

Bitbucket だけ接続できません。
https で繋いでいる場合は、GCM が古いためです。
2026年11月30日から、GCM の 3.0.0 より前の版では、Bitbucket へのログインと push/pull が出来なくなりました(Bitbucket の告知)。
Git for Windows に入っている GCM は 2.9.1 などの古い版なので、GCM 3.x を別に入れます(GCM 3.x が入った Git for Windows は、2026年11月2日時点でまだ出ていません)。

SSH で繋いでいる場合は、Bitbucket が SSH の接続先を ssh.bitbucket.org に移しているためです(古い bitbucket.org は、2026年12月10日に使えなくなる予定)。
接続先の変え方は、Bitbucket の公式の案内にあります。
Git for Windows の次の版には GCM 3.x が入る予定です

GCM の更新方法

GCM の最新版のページ(GitHub)の「Assets」から、名前が gcmuser-win-x64 で始まる .exe のファイルをダウンロードして、インストーラーを実行します(管理者の権限は要りません)。
入ったかどうかは、次のコマンドで確認できます。
PowerShell
& "$env:LOCALAPPDATA\Programs\Git Credential Manager\git-credential-manager.exe" --version

他のアプリも winget でまとめて更新する

唐獅子が吠える声で、更新と削除のアイコンが付いただるま落としの段を吹き飛ばしている浮世絵の絵

winget とは

winget(ウィンゲット/Windows Package Manager)は、アプリを入れる/更新する/削除するための、Microsoft のコマンドです(Microsoft の説明のページ)。
Windows 10/11 には初めから入っているので、PowerShell ですぐに使えます。
初めて使う時は、使用条件への同意を聞いてくるので、Y を打って Enter を押します。

更新できるアプリの一覧を出す

winget upgrade を実行すると、新しい版があるアプリの一覧が出ます。
PowerShell
winget upgrade
「バージョン」が今の版、「利用可能」が新しい版です。
表示の例
名前              ID              バージョン           利用可能            ソース
---------------------------------------------------------------------------------
Microsoft Teams   Microsoft.Teams 26260.1724.5246.2376 26276.513.5241.9675 winget
7-Zip 26.04 (x64) 7zip.7zip       26.04                26.05               winget
2 アップグレードを利用できます。

まとめて更新する/1つずつ更新する

一覧のアプリをまとめて更新する時は、使っているアプリを閉じてから、次のコマンドを実行します。
途中で、アプリ毎に「このアプリがデバイスに変更を加えることを許可しますか?」という画面が出ることがあります。
PowerShell
winget upgrade --all
版を変えたくないアプリがある時は、--all を使わず、1つずつ更新します(<ID> には、一覧の ID を入れます)。
PowerShell
winget upgrade --id <ID> -e

winget で更新できない時

「バージョン番号を判別できません」と出る

アプリが版の番号を Windows に登録していないため、winget が今の版と新しい版を比べられない、というメッセージです(エラーではありません)。
多くは、アプリが自分で更新して最新になっているので、そのままで大丈夫です。
どのアプリかは、次のコマンドで分かります。
PowerShell
winget upgrade --include-unknown

「アップグレードがブロックされています」と出る

古い版と新しい版でインストーラーの形式が違い、上書きで更新できない時に出ます。
まず、アプリの中の更新の機能を試し、それでも更新できない時は、アンインストールしてから入れ直します。

使わなくなったアプリを整理する

パソコンを長く使っていると、使わなくなったアプリや、サービスが終わって更新が止まったアプリが残っていることがあります。
更新が止まったアプリは、安全上の問題が残ることもあるので、winget で一覧を出して整理します。

アプリの一覧を出す

PowerShell
winget list
一覧が長い時は、デスクトップなどのファイルに保存すると見やすくなります。
日本語の名前が文字化けすることがありますが、ID は英数字なので、そのまま使えます。
PowerShell
winget list > $HOME\Desktop\programs.txt

winget で削除する

一覧の ID を指定すると、ARP\… や MSIX\… で始まるアプリも削除できます。
PowerShell
winget uninstall --id "ARP\User\X64\authy"
winget uninstall --id "MSIX\Microsoft.People_10.2202.100.0_x64__8wekyb3d8bbwe"
削除する時は、次のことに気をつけます。
  • ID は「"」で囲む
  • MSIX\… の ID には版の番号が入っているので、アプリを更新すると ID が変わる。
    「見つかりません」と出た時は、winget list 名前 で今の ID を確かめる
  • Windows に初めから入っているアプリは、Windows の大型の更新で戻ることがある
  • Adobe のアプリは、Creative Cloud デスクトップの「アプリ」の画面から削除する方が確実

よくある質問

Git の版を更新すると、設定やリポジトリは消えますか?
消えません。
リポジトリも、名前やメールアドレスなどの設定(.gitconfig)も、そのまま残ります。
どのくらいの間隔で更新すると良いですか?
月に1回くらい winget upgrade を実行して、確かめておくと安心です。
Git も一覧に出るので、winget upgrade --all で一緒に更新できます。
管理者の権限が無いアカウントでも更新できますか?
Git for Windows など、パソコン全体に入れたアプリは、管理者の権限が無いと更新できません。

まとめ

この記事で使った PowerShell のコマンドは、次の通りです。
すること コマンド
Git の版を確かめる git --version
Git を更新する git update-git-for-windows
Git を winget で更新する winget upgrade --id Git.Git -e
GCM の版を確かめる & "$env:LOCALAPPDATA\Programs\Git Credential Manager\git-credential-manager.exe" --version
更新できるアプリの一覧を出す winget upgrade
アプリをまとめて更新する winget upgrade --all
アプリを1つ更新する winget upgrade --id <ID> -e
版の分からないアプリ一覧を出す winget upgrade --include-unknown
アプリの一覧を出す winget list
一覧をファイルに保存する winget list > $HOME\Desktop\programs.txt
アプリを削除する winget uninstall --id "<ID>"
表の <ID> には、winget の一覧に出る ID を入れます。
サイトの課題を、一緒に整理しませんか
IMG-flowは大阪のWeb制作会社です。
サイトの制作から公開後の運用改善まで、できることをサービスページにまとめています。
サービスを見る
この記事は参考になりましたか?
ご回答ありがとうございました