2011-10-13 51 views
4

我试图做一个混帐推到远程服务器,一个大项目。 有没有办法一旦开始上传,如果连接丢失,我可以恢复git push命令,而不必重新开始?恢复混帐推

编辑:我试图推到github上

EDIT2:这样看来,要走的路是做什么的增量。有人可以举一个例子说明如何在我的计算机上已经存在完整的存储库时执行此操作?

感谢

+0

我也不会感到惊讶,如果这是自动完成的;虽然你可以有混帐发送包直接 – sehe

+0

重复http://stackoverflow.com/questions/7326290/continue-an-interrupted-git-push-ssh的更好的结果? –

+0

感谢罗伯托,但我试图推到github上,所以我不认为rsync的可能 –

回答

1

rsync的你的.git/objects目录到远程,然后做混帐推 - 它会快得多。

+0

我相信我不能做与github上 –

+0

很好的建议,我会看看我是否能顺利完成这件事:我尝试同步* *巨大的回购,我不知道,如果两个副本适合没有在服务器一:P。 – WhyNotHugo

4

哈克解决方法:推几个中间提交,这样你不会每次都推之多。如果这是一个无法推动的巨大承诺,这当然不会拯救你。

# develop, and end up wanting to push master 
git branch master-tmp <commit> 
git push origin master-tmp:master 
git branch -f master-tmp <a more recent commit> 
git push origin master-tmp:master 
# ...keep going until you've pushed everything you want 

有两种主要的方法来挑提交推:

  • master~15master~10master~5(15,10,和5个master之前提交)

  • 使用gitk到手动找到它们;当您在历史记录中选择提交时,SHA1会自动置于中间单击粘贴剪贴板。