为了账号安全,请及时绑定邮箱和手机立即绑定

新手上路,用git reset撤回了提交,然后同步到了远端仓库,其他人怎么更新回退?git pull没有更新

新手上路,用git reset撤回了提交,然后同步到了远端仓库,其他人怎么更新回退?git pull没有更新

慕运维8079593 2019-11-03 09:33:17
我用gitreset--hard回退了几个版本,然后gitpush-f覆盖到远端仓库,其他人用gitpull显示没有更新。其他人要怎么才能同步到我回退之后的版本?
查看完整描述

2 回答

?
UYOU

TA贡献1878条经验 获得超4个赞

gitpull下来的修改是在origin/master上,因为其他人的提交在这个之后,所以不会默认合并。如果需要的话可以强制与远程版本一致:gitreset--hardorigin/master
注意:这个会将其他人的本地修改回退。非常不建议在提交远程仓库之后通过gitreset--hard回退!!!
                            
查看完整回答
反对 回复 2019-11-03
?
慕桂英4014372

TA贡献1871条经验 获得超13个赞

首先要看你reset的版本和masterHEAD差多少。如果真的差很多,那么revert(即提交反向操作a=1=>a=2=>a=1)可能是更好的方式,因为这样可以保证所有记录都保留在库里,方便将来回溯。
如果只是差一点,并且可以明确知晓前因后果,知晓副作用,那么让别的同事也在本地执行gitreset就好了,不过记得先保存工作内容,比如建一个分支。
最后,要慎用--hard,一般来说,不要的代码扔到一个备份分支上,未来找时间慢慢清理比较好。
                            
查看完整回答
反对 回复 2019-11-03
  • 2 回答
  • 0 关注
  • 2058 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信