如何从一系列git提交中删除尾部空格更改

时间:2015-10-29 12:29:18

标签: git whitespace

我在github上运行一个项目,有人发送了一个大约20个提交的序列作为拉取请求。这些更改很好,但许多提交也删除了大量的尾随空格。

我同意尾随空白是坏的,但项目充满了它,这不是清理它的地方。

我可以自动编辑提交,从每次提交中删除任何空格只会更改吗?

3 个答案:

答案 0 :(得分:2)

在你的情况下,我会要求PR提交者修复空格,或者在使用git merge选项(例如git merge --ignore-space-change)将拉请求分支合并到主分支时尝试解决该问题。在man git merge

中查找更多信息

答案 1 :(得分:0)

您可以使用git revert来撤消所做的提交。这将创建新的提交,以反转违规提交中的编辑。

然后,从现在还原的提交中获取更改,删除空白截断部分,然后将它们重新应用到repo。这将创建更多新提交,以重新应用原始更改。

这是技术上的答案,但我也想建议你考虑这是否值得做。

你最终会得到一堆基本上没有做任何事情的新提交。 并花了很多时间在这上面,但没有成就任何成果。 可能有一天你会想要剥掉这个空白。

也许最重要的是,这种事情有可能引起开发者之间的紧张关系,如果你在他们所做的事情没有什么问题的时候搞错了他们的工作,很多人会亲自接受。

我不知道你的项目/你的团队/你的情况,所以我在这里可能完全错了。但根据我的经验,人们经常将这种编辑看作是一种动力之旅,或者是小型或类似的东西,它只会导致开发人员之间的问题。因此,在您选择行动方案之前,我建议考虑一下这可能是什么政治/关系结果。

答案 2 :(得分:0)

我最终用master分支中的原始文件覆盖了每个有问题的文件,然后使用diff检查器手动添加了所做的更改,这些更改是我在feature分支中所做的工作的删除。