3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

vscodeでgit worktreeを使う

Last updated at Posted at 2022-03-17

この記事は何?

gitにはworktreeという便利な機能がある。
https://qiita.com/yoichi22/items/8f92110f24690ca8966f

worktreeを使えば、ディレクトリの移動によってブランチを切り替えることができるようになる。

最近(2022年1月頃)まで、このworktreeはvscodeで使うことができなかった。
そのため数多くのvscode愛好家はworktreeの使用を断念していた(はず)。

そして、念願のworktreeのvscodeエクステンションが2022年2月にリリースされた。
この記事ではエクステンションを利用して、worktree機能をvscodeで使用できるか確認する。

使用するエクステンション

Switch Git Worktreeをインストールしておく

image.png

試す

以下のようなブランチ構成がある。

❯ git branch -a
  common
* master
  prd
  remotes/origin/HEAD -> origin/master
  remotes/origin/common
  remotes/origin/master
  remotes/origin/prd

要するにローカルにもリモートにもmaster/prd/commonといった3つのブランチがある状態である。

> pwd
/test/myrepo

❯ git worktree add ../prd prd
> git worktree add ../common common

prdとcommonブランチのworktreeを親ディレクトリにぶら下げた

/test
├── myrepo
│   ├── README.md
│   └── src
├── common
│   └── src
└── prd
    └── src

vscodeにてレポジトリのディレクトリ(今回の場合は/test/myrepo)を開く
この時点ではカレントブランチがmasterになっている

コマンドパレットにて"Switch Worktree"を入力
image.png

移動可能なworktreeが表示されるため、移動したいworktreeを選択する
image.png

今回はcommonを選択する
image.png

そうすると一度vscodeがリロードされて、worktreeとして登録されたディレクトリ(/test/common)が開かれる。ブランチもSwitch Worktreeで指定したcommonに切り替わっている。

以上のことから、Switch Git Worktreeエクステンションを使いvscodeでworktreeが使えることがわかった。

3
2
1

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
3
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?