2014-08-29 61 views
0

一个团队正在使用git从远程repo开展工作。重新创建前一个SHA的远程分支

一些推动是源主人是不需要的,是不平凡的恢复。

鉴于没有人从遥远的地方拉出来,因为有问题的推动,我可以做下列没有不良影响吗?

git checkout master && 
git reset --hard <green-sha> && 
git push origin :master && 
git push origin master 
+0

你能否解释为什么这些提交是不平凡的恢复?如果您可以进行硬重置,恢复应该同样简单。也许我错过了一些东西。 – musiKk 2014-08-29 15:12:34

+0

据我了解,恢复基本上会创建镜像提交来撤消它们。它是否正确? – Ben 2014-08-29 15:15:54

+0

是的,它会创建逆提交。 – musiKk 2014-08-29 15:23:07

回答

1

你应该push -f清洁遥控器,然后其他应git fetch然后git reset --hard origin/master

+0

不幸的是在回购上禁用了推力。对不起,我应该说清楚。 – Ben 2014-08-29 14:58:23

+0

@Ben删除分支并强制推送在概念上非常相似。我很肯定你不能推动你提出的问题。 – musiKk 2014-08-29 15:10:48

+0

@musiKk你是对的。我得到您可以在远程存储库中将'receive.denyDeleteCurrent'配置变量设置为'警告'或'忽略',以允许删除当前分支,不管有没有警告消息。我可以在本地shell中设置这个配置变量吗? – Ben 2014-08-29 15:30:16

相关问题