首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >回源后撤消git合并

回源后撤消git合并
EN

Stack Overflow用户
提问于 2014-10-25 18:33:48
回答 2查看 133关注 0票数 1

在很长一段时间没有开发应用程序之后,我又重新开始了,并且无法整理错误。

因此,我签出了以前的本地分支,修复了它,然后执行了以下操作:

代码语言:javascript
复制
git checkout master
git pull origin master
git merge new_master
git push origin master

(没有意识到我要将它与前面的错误合并)

然后我尝试了一些我在堆栈溢出上发现的东西,现在我完全迷失了。

我如何才能从这一点上回溯?

我已经从github中拉出了主服务器。

EN

回答 2

Stack Overflow用户

发布于 2014-10-25 19:15:17

您可以标记当前的master分支(这并不是您想要的)

代码语言:javascript
复制
git branch tmp

您可以将主服务器重置为较旧的提交(在GitHub上查看主服务器的历史记录,并在推送之前选择一个SHA1 )

代码语言:javascript
复制
git reset --hard old_SHA1

然后,您可以查看本地临时分支和cherry-pick the commit(s) you want to apply to master的历史记录。

完成后,您可以强制推送回源:

代码语言:javascript
复制
git push --force origin master
票数 0
EN

Stack Overflow用户

发布于 2014-10-25 19:42:04

尝试还原它:

找出git合并的散列

git签出主文件git拉取源主文件git merge new_master git推送源主文件

使用git log,然后(Undoing Merges):

代码语言:javascript
复制
$ git revert -m 1 hash_founded

但是,假设您想在git拉出之前回来,您应该

代码语言:javascript
复制
$ git revert -m 2 hash_founded

-m选项“指定主线的父号(从1开始),并允许revert相对于指定的父号撤消更改。”(git revert)

你也可以随时重置:Revert to a previous Git commit

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26561438

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档