Git拉从另一个存储库的分支?
我有一个本地的git仓库,这是github上的一个仓库的克隆。 有人已经分叉了存储库,并在新的存储库上的新分支进行了更改。 我想将这个新的分支移动到我的仓库中(在与主人合并之前先在本地处理它)。
我试图创build一个新的分支,然后从分叉存储库拉,但它抱怨,因为新的分支是主分支的副本以及本地文件的变化,所以它说
error: Your local changes to the following files would be overwritten by merge
。
那么如何将其他库中的分支拉到我的本地存储库的新分支?
我希望这是有道理的。 如果没有,这是我的存储库: https : //github.com/MatthewLM/cbitcoin
正如你所看到的,有人已经创build了一个新的分支“linuxBuild”的存储库: https : //github.com/austonst/cbitcoin/tree/linuxBuild
我希望我的本地资源库上的分支为MatthewLM / cbitcoin。
我怎样才能做到这一点?
您需要确保git status
显示您的本地存储库中不存在未分离的更改。
您可以通过首先存储您的本地更改并拉动该分支来完成此操作。 之后,你可以申请你的藏匿处。
如果要在本地存储库中重新创build分支的分支结构,可以执行以下操作:
git remote add fork <url of fork> git fetch fork git checkout -b fork_branch fork/<branch>
这将创build本地分支fork_branch
与fork中的<branch>
相同的历史logging,即fork_branch
将在fork中的<branch>
中进行分支。 此外,您的本地分支现在将跟踪分支中的该分支,以便您可以轻松地引入在叉中提交的新更改。
我认为你仍然需要事先确定你的工作副本不包含任何改变。
方法无需添加远程。
git checkout --orphan fork_branch git reset --hard git pull <url of fork> <branch>