2016-01-22 63 views
2

我在git blame已被有效破解的仓库中。我可以将git blame配置为始终忽略某些提交吗?想彻底修复git blame

有两个我想在git blame中忽略的提交。

  • 承诺1毁坏很多文件。
  • 提交2立即回复提交1.

每次我的git怪行现在我看到的作者[提交2],而不是真正的逻辑作者。

我最终不得不做git log [file in question]而不是this question中列出的其他解决方案之一。

当我在Intellij中使用Annotate特性时(这基本上是git blame),这两个提交让我很伤心。

有没有人在不重写历史的情况下解决过这个问题?

回答

1

如果真的立即恢复,您可以使用git replace --edit $comment2伪造commit父母。

+0

freenode.net上的某个人#git也提示'git graft',我可能最终会使用这种情况。替换完全删除git对象,而git嫁接指向另一个提交。 – Meredith

+0

没有替换不会删除原始对象(这会破坏完整性),它只会创建替换。基本上他们做同样的事情。 [这里](https://stackoverflow.com/q/6800692/2303202)是关于他们的一些扩展意见。 – max630