1

在 Mercurial 中,当我在本地目录“C:\my-projects\my-old-hg-repo-checkout”中签出存储库并启用“ hg share ”扩展时,命令hg share C:\my-projects\my-old-hg-repo-checkout C:\my-projects\my-new-hg-repo-checkout将创建一个新的本地目录“共享同一个远程”(即,如果我在一个目录中拉取远程更改,它们在另一个目录中可见)。

我如何在本地签出 git 目录“C:\my-projects\my-old-git-repo-checkout”做同样的事情,我想在“C:\my- projects\my-new-git-repo-checkout”(同时确保它们“共享相同的远程”,即从一个目录中提取远程更改将使它们在另一个目录中可见)?

4

1 回答 1

1

您想使用该git worktree命令为本地 git 存储库创建额外的工作树:

git clone <url of remote repo>
cd <directory>
git worktree add <path-to-new-directory> <branch_name>

您现在有两个用于 git 存储库的工作树,每个工作树位于不同的目录中。您可以使用其他git worktree add命令添加任意数量的工作树。请注意,两个工作树不能签出相同的分支。

git fetch从远程更新本地存储库,并且由于两个工作树都附加到同一个本地存储库,您将在两个工作树中都有更新的信息。

有关该命令的文档,请参阅https://git-scm.com/docs/git-worktree 。git worktree

于 2020-01-24T16:17:46.107 回答