1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

VSCode で worktree の差分が表示されなくなった時の対処法

1
Posted at

はじめに

VSCode で git worktree を使っていて、こんな経験はないでしょうか。

  • worktree 側のファイルを編集したのに、ソース管理タブに差分が出てこない
  • さっきまで普通に見えていた diff が、ある瞬間から急に表示されなくなった
  • 設定をいじった覚えはない、はず

私も先日、まさにこの状況に遭遇しました。同様の症状で困っている方がもしいれば、この記事が少しでも役に立てばと思います。

起きたこと

普段、私は git worktree でブランチを切り替えずに複数の作業を並行させています。メインの repo はそのままに、../my-project-feature-a のような形で別ディレクトリを切って、VSCode でそれぞれ開く運用です。worktree は一度慣れると、ブランチ切り替えのストレスがほぼゼロになるので、個人的にはこれが一番好きな git の使い方です。

ある日、いつものように worktree 側の VSCode でファイルを編集したのですが、ソース管理タブに差分が出てきません。ターミナルで git status を叩くと、ちゃんと変更は認識されている。でも VSCode の UI からは何も見えない。

# ターミナルでは変更がちゃんと見える
$ git status
On branch feature-a
Changes not staged for commit:
  modified:   src/foo.ts

「壊れた…?」と一瞬焦りました。拡張機能を疑ったり、VSCode を再起動したり、遠回りをしてしまいました。

結論

VSCode の設定 git.detectWorktrees が false になっていたのが原因。true に戻すだけで解決しました。

身に覚えはないのですが、自分でこのチェックを外したのでしょうか…? アップデートか拡張機能の影響か、はたまた深夜に設定画面でうっかり触ったのか、原因はいまだに分かりません。

直し方

設定画面(Cmd + ,)を開いて git.detectWorktrees で検索、チェックを入れる(= true にする)だけです。

スクリーンショット 2026-04-22 10.31.03.png

settings.json に直接書くならこちら。

{
  "git.detectWorktrees": true
}

設定を反映した瞬間、ソース管理タブに差分が戻ってきました。

まとめ

  • VSCode で worktree の差分が急に表示されなくなったら、まず git.detectWorktrees を確認
  • settings.json"git.detectWorktrees": true を入れれば即解決
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?