在Mercurial中,当我在本地目录“ C:\ my-projects \ my-old-hg-repo-checkout”中签出存储库时,启用了扩展名“ hg share”,命令[ C0]将创建一个新的本地目录,“共享同一远程”(即,如果我将远程更改放在一个目录中,则在另一个目录中可见)。
我要如何在git目录中本地检出“ C:\ my-projects \ my-old-git-repo-checkout”做同样的事情,我想在“ C:\ my-projects \ my-new-git-repo-checkout“(同时确保它们“共享同一远程”,即从一个目录中提取远程更改将使它们在另一目录中可见)?
您想使用hg share C:\my-projects\my-old-hg-repo-checkout C:\my-projects\my-new-hg-repo-checkout
命令为本地git repo创建其他工作树:
git worktree
现在,您的git repo有两个工作树,每个工作树都在不同的目录中。您可以使用其他git clone <url of remote repo>
cd <directory>
git worktree add <path-to-new-directory> <branch_name>
命令添加任意数量的工作树。请注意,两个工作树不能签出相同的分支。
git worktree add
从远程更新本地存储库,并且由于两个工作树都连接到相同的本地存储库,因此两个工作树中都将具有更新的信息。
请参见git fetch
以获取有关https://git-scm.com/docs/git-worktree命令的文档。