新機能・アップデートAIにより執筆
Visual Studio、過去のコミットと作業中のコードを一度に比較
Visual Studio 2026の10月の更新(18.11)で、過去のコミットと作業中のコードの差を、リポジトリ全体で見られるようになった。マージの競合は、フォルダーやリポジトリ全体を選んで片側にそろえられる。未保存の作業を残すHot Exitも加わり、こちらは既定ではオフになっている。
2026年8月の更新で、Visual Studioは過去のコミットと書きかけのコードを比べられるようになった。ただ、比べられたのはファイル1つずつだった。
10月の更新で、この比較がリポジトリ全体に広がった。マージで競合したファイルも、どちらの側を残すかを一度に決められる。
Microsoftが公式ブログで更新を紹介したのは10月28日。更新そのものは、10月13日からStable Channelに出ている。版はVisual Studio 2026の18.11。Gitの2つの機能は、どちらも利用者がDeveloper Communityに寄せた要望に応えたものだ。
作業ツリーとの比較が、ファイル単位から全体へ
ある時点のコミットから今のコードまでに、何が変わったのか。8月の18.9では、ソリューションエクスプローラーでファイルの履歴を開いて比べる手順だった。
18.11では、Git Repositoryウィンドウのコミット履歴かブランチの一覧で、コミットを右クリックして「Compare with Working Tree」を選ぶ。比較の画面に変更のあったファイルが並び、1つずつ差分を開ける。コミット済みの変更も、まだコミットしていない編集も、同じ差分に入る。
コミットをチェックアウトする必要はない。
古いコミットをチェックアウトすると、HEADがブランチから切り離された状態になる。書きかけの変更を退避させる手間もあり、少し見比べたいだけなら重い方法だった。
Microsoftは使いどころとして、複数のコミットにまたがるリファクタリングの見直しと、問題のなかった版から何が変わったかの調査を挙げる。たとえば、不具合が出る前に最後に正しく動いたコミットと比べれば、その後の変更を、手元で直しかけの分まで一覧にできる。
競合は、フォルダーごとに片側へそろえる
数十のファイルで競合が出たGitのマージを、1ファイルずつ解決していくのは骨が折れる。
18.11では、Git Changesウィンドウの「Unmerged Changes」で、複数のファイルやフォルダー、リポジトリのルートを選んで右クリックする。「Keep All Current」か「Take All Incoming」を選べば、範囲の下にある競合ファイルに同じ解決が当たる。操作は1回で済む。
Microsoftは日本語版のドキュメントで、2つを「現在の内容をすべて保持」「受信側の変更をすべて採用」と訳している。
マージエディターにある「Take Current」「Take Incoming」のボタンとは別の機能だ。ボタンは開いたファイル1つの中で片側を採るもので、解決を終えたら「Accept Merge」を押し、競合したファイルの数だけ繰り返す手順になる。
ただし、範囲を広く取るほど、手で直すべきファイルまで片側に寄ってしまう。Microsoftも、操作の前に範囲を見直すよう求めている。向くのは、どちらを残すかが最初から決まっているフォルダーだろう。
IDEによって、操作の形は違う。JetBrainsのRiderのヘルプによると、Gitの操作で競合が起きると「Conflicts」のダイアログが自動で開き、ファイルごとに「Accept Yours」「Accept Theirs」か、手作業での解決を選ぶ。また、Visual StudioはWindows向けで、Mac版は2024年8月に提供を終えた。
MacやLinuxの開発者もいるチームなら、3つのOSで動くRiderが選択肢になる。
Hot Exitは、既定ではオフ
意外なのは、未保存の作業を残す「Hot Exit」が、初めは無効になっていることだ。
オンにすると、Visual Studioを閉じても、保存していない新しいファイルや既存のファイルへの編集が残る。次に開いたときは、タブやウィンドウの配置まで元どおり。保存済みのファイルも、Ctrl+Zで取り消せる履歴が引き継がれる。設定は、Tools > Optionsの「Projects and Solutions」にある「General」で、「Reopen unsaved documents on solution load or empty environment」を選ぶ。
1台のPCを交代で使う職場では、前に使った人の書きかけも開いてしまう。オンにする前に、使い方を決めておくと安心だ。
キーボードだけでタブを並べ替えるショートカットも加わった。Ctrl+Shift+PgUpで左へ、Ctrl+Shift+PgDnで右へ動く。このキーには、これまでテキストエディターの2つのコマンドが割り当てられていた。元のコマンドには、Keyboardの設定で別のキーを付け直せる。
リリースノートには、複数のプロジェクトをまとめてビルドするとき、最初の失敗で止める設定も載っている。Microsoftの試験では、4回のビルドの平均で、失敗したあと終わるまでの時間が26秒から1.5秒に縮んだ。GitHub Copilotのチャットも作り直され、設定で切り替えて試せる。
更新は毎月、LTSCは11月から
今回の機能はStable Channelの毎月の更新で届く。版はHelp > Aboutで見られる。18.11以降なら、もう使える。
上げるには、Helpメニューの「Check for Updates」か、Visual Studio Installerを使う。既定では端末の管理者権限が要るため、開発者が自分では上げられない会社もあるだろう。管理者がAllowStandardUserControlのポリシーを設定すれば、標準ユーザーでも更新できる。
Stable ChannelはCommunityを含むすべてのエディションで使える。一方、翌年の版へ移るまで今の版にとどまれるLTSCは、ProfessionalとEnterprise、Build Toolsだけが対象。Visual Studio 2026向けは、2026年11月に提供するとMicrosoftは案内している。
チームで使うなら、手始めに、前回リリースしたコミットを右クリックしてみたい。次に出す変更が、書きかけの分まで一つの画面にそろう。
出典
- Visual Studio October Update: Compare Commits to Your Code, Resolve Conflicts in Bulk, Keep Coding(Visual Studio Blog)
- Visual Studio 2026 release notes(Microsoft Learn)
- Browse repos, compare branches & commits - Visual Studio (Windows)(Microsoft Learn)
- Resolve merge conflicts in Visual Studio(Microsoft Learn)
- Visual Studio でのマージの競合を解決する(Microsoft Learn)
- Update Visual Studio installation to recent release(Microsoft Learn)
- Visual Studio Channels and Release Rhythm(Microsoft Learn)
- Visual Studio for Mac のサービス終了(Microsoft Learn)
- Resolve Git conflicts(JetBrains Rider Documentation)
この記事は公式の発表をもとに AI が執筆し、サービス・システム大全 編集部が確認しています。誤りに気づいたときは 訂正の窓口 からお知らせください。