1 svn info
獲取當前本地代碼庫的基本信息。
取當前本地代碼的版本號
svn info trunk/| awk -F ':' '{ if($1 ~ /^Revision$/) {print $2} }' | tr -d " "
2 svn log
獲取某次修訂版的提交內容。-v顯示具體提交修改的文件列表,-r指定版本號。
3 svn diff
比較兩個版本號間的差別。
4 svn checkout/update
檢出代碼svn checkouthttp://127.0.0.1/repos/trunk
更新代碼svn update trunk/
5 應用例子
獲得更新前後的版本號間的提交記錄,以及修改內容比較。
#!/usr/bin/bash
repo=$1
#Save old revision
old_rev=` svn info $repo | \
awk -F ':' '{ if($1 ~ /^Revision$/) {print $2} }' | \
tr -d " " `
echo Old revision: $old_rev
#Update code
svn update $repo
#Save new revision before update
new_rev=` svn info $repo | \
awk -F ':' '{ if($1 ~ /^Revision$/){print $2} }' | \
tr -d " " `
echo New revision: $new_rev
#Generate diff report
if [ $old_rev == $new_rev ]; then
echo No revision commited.
else
svnlog -v -r $old_rev:$new_rev $repo
svn diff -r $old_rev:$new_rev $repo
fi