【问题标题】:How to go back to an old commit and merge with top of the branch?如何回到旧提交并与分支顶部合并?
【发布时间】:2014-03-08 01:28:59
【问题描述】:
我刚刚意识到,我们工作分支的顶部缺少我所做的重要提交。很可能我团队中的某个人写了这个提交,他的更改..
我怎样才能回到那个提交,然后重新与分支的顶部合并?
我尝试创建一个仅包含我的提交的分支,然后与主分支的顶部合并,但 git 会自动合并并将我提交后发生的所有更改堆叠在我创建的这个分歧分支上。
谢谢。
【问题讨论】:
标签:
git
version-control
github
merge
atlassian-sourcetree
【解决方案1】:
如果提交已经存在,您可以使用工作分支中的git cherry-pick <sha1> 将其添加到顶部。
如果由于某种原因你需要在提交树中按特定顺序放置它,你可能更喜欢git rebase -i <oldsha1>,然后在你想要完成/添加到/之后的提交处停止,并使用git cherry-pick(或@ 987654324@) 此刻