Git:将本地分支复制到另一个本地目录中

use*_*184 3 git

很抱歉问这个愚蠢的问题。

我正在尝试将我的 repo(本地)复制到另一个本地目录中。如果我只是做CMD + cCMD + v我的回购的,我居然复制我的本地回购的所有分支。如何只复制一个分支?

谢谢

wal*_*rlv 6

每个 git 存储库都包含整个 git 提交树,因此您无法通过复制和粘贴 git 文件夹来获得仅具有单个分支的 git 存储库。

但是git worktree是为这种情况而设计的。


只需在原始 git 存储库中键入此命令。

git worktree add -b <your-new-branch-name> <your-new-directory> <your-base-branch>
Run Code Online (Sandbox Code Playgroud)

该命令意味着您将在 path 中创建一个新文件夹your-new-directory,然后创建一个your-new-branch-name基于该your-base-branch分支命名的新分支。

例如,您可以在下面键入此内容以MyAnotherFolder在原始文件夹旁边创建一个文件夹,并temp/my-copy基于master.

git worktree add -b temp/my-copy ../MyAnotherFolder master
Run Code Online (Sandbox Code Playgroud)

如果以后删除该文件夹,请键入此命令以删除工作树引用。

git worktree prune
Run Code Online (Sandbox Code Playgroud)


Ale*_*lex 6

当我们将 repo 移动到新服务器时,我遇到了同样的问题。

我刚刚从我的旧仓库中做到了:

git push <path_to_new_local_repo> <branch_name>

它工作得很好。

  • 这个答案被低估了。 (3认同)