比防说我在11点00分从服务器拉取了一次代码,然后与我本地的合并完并且提交了,在11点01分时准备push的时候,提示在我push之前已经有其他人抢险push了,我需要再pull一下才能提交,这时我是否需要将我本地的这一次commit回滚掉?
如果需要回滚我本地的commit该怎么回滚呢?
我现在的做法就是 git reset --hard commitid,这样貌似就把我提交的文件移出暂存区了?我这么做是否正确呢?是否还有其他做法呢?
是不是应该再pull一次,如果有冲突,就解决冲突之后再commit, push如果没有冲突,直接commit,push
git pull下来后,
如果有冲突,解决完冲突再commit,然后push就好了;
如果没有冲突,直接就可以push
你从服务器 pull 之后实际上是将之前的抢险 push 合并到了你自己的本地版本之中,结果有两种:
自动合并成功 (fast-forward)
自动合并失败,需要手动 merge
两种情况下,你都应该重新跑一下 test ,确保合并后的代码没有影响你原来的功能和设想。然后再 push.
git fetch origin && git rebase origin/master && git push
是不是应该再pull一次,
如果有冲突,就解决冲突之后再commit, push
如果没有冲突,直接commit,push
git pull下来后,
如果有冲突,解决完冲突再commit,然后push就好了;
如果没有冲突,直接就可以push
你从服务器 pull 之后实际上是将之前的抢险 push 合并到了你自己的本地版本之中,结果有两种:
自动合并成功 (fast-forward)
自动合并失败,需要手动 merge
两种情况下,你都应该重新跑一下 test ,确保合并后的代码没有影响你原来的功能和设想。然后再 push.
git fetch origin && git rebase origin/master && git push