2008-11-20 112 views
9

我組建了一個構建系統,並想知道是否有可靠的方法來確定檢出的SVN文件夾是否需要更新(即與存儲庫不同步)。除非有所改變,否則我想避免每晚構建。我可以編寫一個腳本來解析我猜想的svn update命令的結果,但是我想知道是否存在能夠告訴我是否需要更新的命令?檢查顛覆更新

回答

15

使用status命令的show updates option

svn status -u 

svn status --show-updates 
+3

我會建議-q跳過垃圾文件 – 2008-11-20 13:31:43

2

answer of flolo不起作用好顛覆的外部(這也是在Don't show svn:externals in svn status討論)。一個更好的解決方案,如果你只需要當前文件夾需要更新(不完全哪些文件本身)的信息,this solution更好:

cd somedir; 
svn info -r HEAD | grep -i "Last Changed Rev" 
Last Changed Rev: 8544 
svn info | grep -i "Last Changed Rev" 
Last Changed Rev: 8531 

如果這些數字是不一樣的,需要更新。

+0

「Rob的回答不適用於顛覆外部。」這似乎不再真實(用SVN 1.8.8測試)。但是,_your_解決方案不適用於外部(除非在每個外部運行)。 – Melebius 2017-03-16 09:17:23