我有什么:
https://github.com/kayuri/HNC/network
这两个存储库是同步的。
我们如何使kayuri
repo包含没有任何合并的线性提交历史记录,nponeccop
repo根本不包含任何提交(因为它们都已经在上游kayuri
repo中?
我的本地仓库是由clone
的git nponeccop
创建的,它有两个遥控器:origin
(即nponeccop
),我添加了kayuri
后面。
我想重新定位nponeccop
,以便从kayuri
我将kayuri
和origin
列为远程用户:
$ git remote -v
kayuri git://github.com/kayuri/HNC.git (fetch)
kayuri git://github.com/kayuri/HNC.git (push)
origin git@github.com:nponeccop/HNC.git (fetch)
origin git@github.com:nponeccop/HNC.git (push)
现在如果我git rebase kayuri
我收到错误:
$ git rebase kayuri
fatal: Needed a single revision
invalid upstream kayuri
本地回购只有一个'主'分支。我做错了什么?
答案 0 :(得分:1)
考虑历史时:
如果nponeccop
包含kayuri
上已有的提交,则在回购nponeccop
时,只需简单:
git checkout master
git fetch kayuri
git rebase kayuri/master
git push -f origin master
应足以仅重播名为nponeccop
的遥控器顶部的增量(即您将nponeccop
添加为回购kayuri
的遥控器。)
任何常见的提交都不会被重播两次,而且会被忽略。
请注意,这将在您自己的主分支中重写提交历史记录,因此push -f
。如果您是几个处理nponeccop
回购的人,那么对其他用户来说可能会有问题。