距开课0天0时0分-10209416秒
为情所困2017-05-02 09:26:53 0 4 257
[Git讨论组]举报回复话题 ↕
比防说我在11点00分从服务器拉取了一次代码,然后与我本地的合并完并且提交了,在11点01分时准备push的时候,提示在我push之前已经有其他人抢险push了,我需要再pull一下才能提交,这时我是否需要将我本地的这一次commit回滚掉?
如果需要回滚我本地的commit该怎么回滚呢?
我现在的做法就是 git reset --hard commitid,这样貌似就把我提交的文件移出暂存区了?我这么做是否正确呢?是否还有其他做法呢?
4
0
分享
大家讲道理 2017-05-02 09:28:534楼
是不是应该再pull一次,如果有冲突,就解决冲突之后再commit, push如果没有冲突,直接commit,push
赞 +0添加回复
我想大声告诉你 2017-05-02 09:28:533楼
git pull下来后,
如果有冲突,解决完冲突再commit,然后push就好了;
如果没有冲突,直接就可以push
phpcn_u1582 2017-05-02 09:28:532楼
你从服务器 pull 之后实际上是将之前的抢险 push 合并到了你自己的本地版本之中,结果有两种:
自动合并成功 (fast-forward)
自动合并失败,需要手动 merge
两种情况下,你都应该重新跑一下 test ,确保合并后的代码没有影响你原来的功能和设想。然后再 push.
巴扎黑 2017-05-02 09:28:531楼
git fetch origin && git rebase origin/master && git push
大家讲道理 2017-05-02 09:28:534楼
是不是应该再pull一次,
如果有冲突,就解决冲突之后再commit, push
如果没有冲突,直接commit,push
赞 +0添加回复
我想大声告诉你 2017-05-02 09:28:533楼
git pull下来后,
如果有冲突,解决完冲突再commit,然后push就好了;
如果没有冲突,直接就可以push
赞 +0添加回复
phpcn_u1582 2017-05-02 09:28:532楼
你从服务器 pull 之后实际上是将之前的抢险 push 合并到了你自己的本地版本之中,结果有两种:
自动合并成功 (fast-forward)
自动合并失败,需要手动 merge
两种情况下,你都应该重新跑一下 test ,确保合并后的代码没有影响你原来的功能和设想。然后再 push.
赞 +0添加回复
巴扎黑 2017-05-02 09:28:531楼
git fetch origin && git rebase origin/master && git push
赞 +0添加回复