【问题标题】:git - exclude commits when rebasinggit - 变基时排除提交
【发布时间】:2015-08-19 05:29:09
【问题描述】:

我最近合并了一个尚未准备好进入 master 的功能。在没有意识到的情况下,我将坏主人重新定位到另一个好的分支。

但现在我不知道如何从我的另一个故事中删除那些糟糕的提交。

这里是我的 git 日志文件

commit 15bb0d630f9b9cf59axxxxxxx8100d3a7302
Author: Moises Zaragoza <mZaragoza@xxxx.com>
Date:   Mon Jun 1 11:45:31 2015 -0400

    Some updates 


commit 3caf183afe3f5d7dcfxxxxxxxa239d44c8dfd11a
Author: Moises Zaragoza <mZaragoza@xxxx.com>
Date:   Mon Jun 1 11:45:31 2015 -0400

    Some updates 

commit 3c6c81c7a3215fcdxxxxxxxb56a5540745c397
Author: Moises Zaragoza <mZaragoza@xxxx.com>
Date:   Wed Jun 3 16:59:31 2015 -0400

    Bad Commit that should not be here 

【问题讨论】:

  • 有点不清楚你在问什么。您能否尝试添加其他信息以明确说明?
  • 您是否也想从 master 中删除错误提交?

标签: git git-merge rebase git-rebase


【解决方案1】:

如果您还没有推送您的代码,您可以进行交互式变基并删除提交:

git rebase --interactive 3c6c81c7a3215fcdxxxxxxxb56a5540745c397^

你最终会得到一个有提交历史的编辑器:

3c6c81c7a3215fcdxxxxxxxb56a5540745c397 Bad Commit that should not be here
3caf183afe3f5d7dcfxxxxxxxa239d44c8dfd11a Some updates 
15bb0d630f9b9cf59axxxxxxx8100d3a7302 Some updates 

如果要删除commit 3c6c81c7a3215fcdxxxxxxxb56a5540745c397,只需在交互式rebase中删除这一行并保存即可:

3caf183afe3f5d7dcfxxxxxxxa239d44c8dfd11a Some updates 
15bb0d630f9b9cf59axxxxxxx8100d3a7302 Some updates 

http://www.git-scm.com/book/en/v2/Git-Tools-Rewriting-History

【讨论】:

    猜你喜欢
    • 2020-02-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-07-06
    • 2014-08-28
    相关资源
    最近更新 更多