我意识到有关此主题的类似问题;我担心我没有抓住最好的方式从这种情况中恢复过来。我在Windows上使用SourceTree。
我从dev分支,对一些文件做了一些提交,推送到远程,并合并回dev。事实证明,开发中存在许多预先存在的提交,这些提交不会随时被提升为主人,而我真的应该从主人那里分支。
所以我从master那里开了一个新的分支,然后我从原来的分支中挑选出了我知道很好的提交。一个问题是我最初修改的两个文件在新分支中会有不同的变化。
但是,我不确定如何最好地处理将dev分支重置回我之前进行的两次合并之前的状态的过程。我应该:
这是图表。最左边的分支是dev的原始分支。下一个分支是来自master的新分支,具有樱桃选择的提交。蓝线是我要将dev重置为的提交。谢谢!
答案 0 :(得分:1)
鉴于 NO ONE 已从远程develop
分支撤出,您需要做的就是覆盖分支develop
指向的提交,并且按照这些命令执行此操作:
# Change your local develop to point that old version of that branch
git checkout -B develop <commit-hash-of-blue-line-in-pic>
# FORCE push your local develop to the remote develop
git push origin -f develop