首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Git还原为以前的推送。

将Git还原为以前的推送。
EN

Stack Overflow用户
提问于 2014-02-21 16:38:40
回答 1查看 106关注 0票数 0

我犯了一个错误,解释如下:

我在分支feature5上,与master相比大约有200个提交,我从feature5创建了一个本地分支documentation。(我忘了我不在master上)

然后,我将新的/更新的文档提交给origin/documentation (我认为documentation分支不存在于origin上)。(许多项目.失去理智)

然后,我意识到我推了大约200个不应该属于这个分支的documentation。我怎样才能还原它呢?

我看了一下这个讨论,但是我在我的documentation分支中迷路了,我不知道我应该在哪里恢复,因为它上有太多来自feature5的提交,我想恢复这个分支上的最后一个推送,可以吗?或者知道在我做坏事之前的最后一次承诺是什么?

Undoing a 'git push'

另一种解决方案是删除origin/documentation,并基于主服务器创建一个新的origin/documentation分支,因为Master包含旧的origin/documentation分支,没有上次的错误推送,但是如果可能的话,我想尝试保持origin/documentation分支的活力。谁知道呢,也许我需要在几天/几周/几个月内做同样的事情-- ^_^

我还快速地看了一下git-revert,但到目前为止,我看不出它对我有什么帮助。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-02-21 16:53:13

如果我正确地理解了您的问题,您可以通过使用documentation参数将您的--onto分支重新定位到主程序来修复这个问题。

代码语言:javascript
复制
git rebase --onto origin/master HEAD~n

其中"n“是您在documentation分支中真正关心的提交数。

然后,在提升新的-f分支时,需要使用documentation标志。

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

https://stackoverflow.com/questions/21940038

复制
相关文章

相似问题

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