从原始仓库更新github fork

时间:2013-01-01 00:39:55

标签: git github merge

我找到了一些方法来从github上的原始仓库更新fork(让我们说“jay”是原始仓库所有者的名字):

git remote add --track master jay git://github.com/jay/repo_name.git
git fetch jay
git merge jay/master

好的,它可以工作,但是在git push git发送了大量数据之后我注意到我在github上的公共活动中做了大约500次提交,但实际上两个主分支之间的差异大约是8次提交。 / p>

那有什么不对?

更新:好吧,看起来我撒了谎。差异是几行代码,然而,作者以某种方式提取了大量的提交。也许它只影响了8个文件,这就是我认为8次提交的原因。

2 个答案:

答案 0 :(得分:3)

没有错。 GitHub的设计选择是所有更改都通过本地计算机进行,因此您获取上游远程提交,然后将它们推回到您自己的源远程服务器上,这恰好位于同一台服务器上(但不同的回购),但是git并不“知道”那个。

虽然GitHub可以进行直接转移(假设快速'合并'),但它会产生安全风险(谁有控制权,并且已经完全验证),误解风险(我的远程参考不匹配)远程服务器,我刚才是最新的,没有发出任何命令风格的副作用),毫无疑问很多其他人。

有一个GitHub博客/帮助页面,说明了如何更新分支。

答案 1 :(得分:0)

曾经尝试为我解决此问题...

今天,我测试了一项服务,该服务会自动从https://forkrefresh.herokuapp.com/或自托管(github)的上游父级更新所有分叉