2

git-diff 有一个很酷的功能,记录为:

--check 如果更改引入尾随空格或在制表符前使用空格的缩进,则发出警告。如果发现问题,则以非零状态退出。与 --exit-code 不兼容。

我通常在提交之前使用 --check 运行 git-diff 并修复所有警告以保持代码整洁。是否有任何脚本或工具可以解析 git-diff --check 的输出并自动修复所有警告?

4

1 回答 1

2

本身并没有真正的脚本,但您可以很容易地使用它git apply --whitespace=fix来清理补丁。在我的脑海中,类似于以下内容:

git commit -m 'this has diff --check errors'
git format-patch --stdout HEAD | git apply --index --whitespace=fix -
git commit --amend -C HEAD

如果您希望自动执行此操作,您可以尝试将其转换为提交后挂钩,但要更加小心。

于 2012-10-02T14:21:35.513 回答