$svn diff my.object
- <description>reverse reference to the Update Center Enrollment Application task.
+ <description>reverse reference to the Update Center Enrollment Application task.
它必須是白色空間/隱藏的字符或行結束的問題....但我怎麼弄出來的?如何查看svn diff中的空白字符?
$svn diff my.object
- <description>reverse reference to the Update Center Enrollment Application task.
+ <description>reverse reference to the Update Center Enrollment Application task.
它必須是白色空間/隱藏的字符或行結束的問題....但我怎麼弄出來的?如何查看svn diff中的空白字符?
您可以使用第三方差異程序。 svn diff
有一個--diff-cmd
參數,它允許您使用我使用的工具,如gvimdiff。
我有一個相當簡單的腳本,它將參數SVN傳遞到第三方diff程序中,並顯示差異在哪裏。
#! /usr/bin/env perl
# mydiff
use strict;
use warnings;
use constant DIFF => qw(mvim -d -f);
my $parameters = $#ARGV;
my $file1 = $ARGV[$parameters - 1];
my $file2 = $ARGV[$parameters];
my $title1 = $ARGV[$parameters - 4];
my $title2 = $ARGV[$parameters - 2];
$ENV{TITLE} = "$title1 - $title2";
system DIFF, '-c', 'let &titlestring=$TITLE', $file1, $file2;
如果我需要使用它:
$ svn diff --diff-cmd mydiff
而且,我會看到這樣的事情:
你可以看到線#158已經空白的區別。使用GVIM,您也可以過濾差異中的空白 - 就像大多數差異程序一樣。
好吧,我想出了一個簡單的解決辦法
svn diff my.object > foo.txt
然後使用:
od -c foo.txt
它顯示了新行字符,我發現一個有\n
和其他有\r\n
。
只是管道輸出到首選程序。例如。
$ svn diff my.object | OD -c
酷,它顯示新的線字符? – Joelio
我猜...如果你使用':set list',你會看到製表符和'$'標記EOL,所以你可以在一行的末尾看到額外的空白。如果你有':set fileformat = unix',如果在末尾有一個Windows EOL字符,你會在行尾看到'^ M'。請記住,我恰好使用GVIM。幾乎可以使用任何***程序***編輯器(而不僅僅是文本編輯器)並獲得類似的結果。 –