繁体   English   中英

为什么git reset commit + git push导致当前分支的提示落后于远程?

[英]why do git reset commit + git push cause tip of current branch to go behind remote?

我想撤消对我的回购的一些小改动。 我决定回去两次提交,然后做了

git reset --hard <commit>

git push -f

一切都很顺利。 但是当我推送到heroku时,我得到一个关于如何没有推送一些引用的错误,然后这个解释:

更新被拒绝,因为您当前分支的提示落后于其远程对手。 在再次按下之前合并远程更改(例如'git pull')。

每次我回到之前的提交时,我都会找到一个独立的HEAD或远端后面的尖端。 这可以防止我推送到git或heroku。 为什么? 我该如何解决这个问题? 要遵循的正确命令列表是什么,以便将来不会造成干扰?

我认为heroku不允许你rewrite历史。 当您在远程分支上工作时,不应使用resetrebase 通过使用

git revert HEAD~2..HEAD

将创建2个新提交,恢复最近2次提交的更改。 这也可以防止您的同事发生合并冲突。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM