我想在他们自己的提交中提交我的所有空白更正,以保持其他一切纯净的空白更改.
使用类似的东西很容易过滤出空白差异git diff
git diff --ignore-all-space --ignore-space-change --ignore-space-at-eol --ignore-blank-lines
Run Code Online (Sandbox Code Playgroud)
但是如何获得只有空格差异的列表?
(得到一个只有空格差异的文件列表也很有用,所以我可以add把它们全部都git add -p解决掉,看看空白区别.但我想这是次要的.)
这是您可以做到的一种方法:
从一个干净的工作目录开始(例如git reset --hard)
使用Whitespace Total Fixer清除所有空白错误。有多种选项可以修复或忽略各种问题,但默认设置可能就可以:
find . -name "*.whatever_extension_you_need" -exec wtf -v -i {} \;
Run Code Online (Sandbox Code Playgroud)
git diff现在将仅显示空白更改
暂存并提交仅包含空白的更改。
(FWIW,我写道wtf;如果这看起来像是无耻的自我推销,我很抱歉,但我确实是专门针对像这样的情况编写的,在这种情况下,存储库反复受到空白问题的污染,从而使您的提交变得混乱。)
您还可以用来wtf简单地检查空格错误,而不是就地修复它们;这不会影响您的文件,但它会向 stderr 打印一条有关它发现的问题的消息(希望有帮助)。
find . -name "*.whatever_extension_you_need" -exec wtf -v -i {} \;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1902 次 |
| 最近记录: |