在工作中,我有一个项目,它有两个不同的版本,有一些常见的基本功能。我使用git worktree
将这些版本放在单独的文件夹中,每个版本master
旁边有两个长期运行的分支,master
用于常见功能。所以有3个文件夹和一个存储库。此外,还有一个远程存储库,并将所有内容推送到那里。
$git branch -a
*master
version-1
version-2
remote/origin/master
remote/origin/version-1
remote/origin/version-2
在家用PC上,我有master
文件夹,这个本地存储库链接到与我的工作回购相同的远程数据库。当我得到分支列表时,它就像:
$git branch -a
*master
remote/origin/master
remote/origin/version-1
remote/origin/version-2
我想checkout
version-1
以及将版本-a的全部内容复制到本地文件夹,该文件夹由git跟踪为worktree
,如同我的工作。
git clone
或git checkout
会这样做,还是我需要做一些更棘手的事情?
答案 0 :(得分:0)
最后,我使用它来拥有像我工作,在我家一样的工作树。
$ git worktree add --checkout ../version-1 version-1
$ git worktree add --checkout ../version-2 version-2
检查我在不同文件夹(工作树)中长期运行的分支。