2017-01-16 28 views
2

如何檢查SVN中的兩個版本是否有所不同? 我只想知道他們是否有相同的內容。檢查SVN版本是否有所不同

我知道你檢查diff命令。示例

svn diff -r 12345:67890 http://subversion.test.com/svn/myapp 

但是這會產生很多輸出。 無論結果如何,diff的返回碼始終爲零。

我使用的Linux/bash的

我要像一個形式incoorperate此:

svn diff -r 12345:67890 http://subversion.test.com/svn/myapp 
if [[ "$?" == "1" ]]; then 
    echo "Code is Different" 
fi 
+0

所有命令都接受'--xml'開關,目的是自動處理。 –

+0

如果你有完全匹配(考慮到你沒有空白),你可以使用modified ='svn diff -r 12345:67890 http://subversion.test.com/svn/myapp | wc -l'因爲diff應該列出修改過的行。然後使用修改後的變量進行比較。 – Gnqz

+0

@Gnqz這看起來像一個偉大的解決方案!感謝名單。我需要花更多的時間在優秀的舊版linux命令中。 :) – wmc

回答

1

你可以只使用:

mod=`svn diff -r 12345:67890 http://subversion.test.com/svn/myapp | wc -l` 
if [[ $mod -ne 0 ]]; then 
    echo "Code is Different" 
fi 

由於svn diff應列出差異。

0

可以玩弄告訴SVN使用任意diff命令,使用svn diff --diff-cmd some-diff-cmd

技術含量低的解決方案,可以檢查出兩種版本,並在其上運行您的/usr/bin/diff -q;這將爲不同的和相同的文件產生不同的退出狀態。

相關問題