如何使用magit编辑提交中的diff

时间:2014-02-19 10:30:30

标签: git emacs magit

我已经做了一些改变,并在差异中显示了一些他们不需要的东西。

例如:     位置:相对;
     - 背景:whitesmoke; }
    +背景:#f5f5f5; }

所以我想删除这些条目。我可以使用magit来做到这一点。如果没有,怎么可能做到这一点?

2 个答案:

答案 0 :(得分:3)

您可以在要恢复的大块上使用 v ,然后您可以:

  • 修改提交( c a )以更改上次提交
  • 只需提交,并使用 E (interactive-rebase)用旧提交压缩你的还原更改

如果开头的大块太大而且包含多处变化, 其中一些你想要丢弃,而另一些你想要保留,那么 您可以在使用 v

之前选择要丢弃的行

请注意,hunk只是提交的一部分,magit会突出显示您当前所处的hunk。您还可以在提交的标头中使用 v 完全恢复提交。

使用最近的git和magit版本,你也可以进行fixup commit, 然后使用git rebase interactive --autosquash自动压缩 修复提交。

答案 1 :(得分:1)

这就是我要做的,在你想要改变它的行上的magit diff hit enter 中它将带你到你做出改变的文件中的特定行。进行更改,然后按 c ,然后按magit-status-buffer中的 a 修改提交。