在svn diff或任何其他工具(基于linux)中是否有方法仅显示空白/标签更改?。
目的,我不想要检查那些差异。如果工具可以捕获那些差异,我可以在检入之前将这些行放回到相同的状态。
谢谢,
答案 0 :(得分:5)
这应该适合你。
#!/bin/bash
FILES=`svn status | awk '{ print $2}'`
for file in $FILES
do
COUNT=`svn diff $file --diff-cmd 'diff' -x '-w' | wc -l`
if [ $COUNT -le 2 ]
then
echo "$file has only whitespace changes"
fi
done
此外,为什么不将这些文件恢复到同一状态呢?
答案 1 :(得分:2)
@ mfisch脚本的一些改进:仅处理具有文本修改的文件,并支持带空格的文件名。
#!/bin/bash
svn status | grep ^M | sed 's/^........//' |
while read -r file
do
COUNT=$(svn diff "$file" --diff-cmd 'diff' -x '-w' | wc -l)
if [ $COUNT -le 2 ]
then
echo "$file has only whitespace changes"
# svn revert "$file"
fi
done
答案 2 :(得分:0)
Beyond Compare会根据文件类型显示以不同颜色突出显示的内容。他们确实有Linux版本,但我还没有使用它。这是一个伟大的差异工具。