#!/bin/sh
#匯出指定版本之間的差異檔案 如100到200之間的差異則匯出100(不包括)-200(包括)的所有修改
svn_url="
svn:
"if [ $#
-eq 0 ] ; then
echo "
you must useage like $0 old_version1(不包括) new_version(包括)
"exit 1fi
if [ $1
-gt$2
] ; then
echo
"you must useage like $0 old_version1(不包括) new_version(包括)
"exit 1fi
old_version=$1
new_version=$2
#匯出的目標路徑
work_path="
"echo
"開始分析版本差異...
"diff_url="
svn diff -r $:$ --summarize --username bug --password 123456 $
"echo
$if test ! -e "$"
; then
mkdir -p $fi#
echo $|sh >$_diff.txt
diff_num=`$ |wc -l`
if [ $
-ne 0]; then
echo
"差異檔案共$個,準備匯出.
"diff_list=`$
`
#echo $
num=0skip=0
for field in
$ ; do
#長度小於3(a、m、d、am即增加且修改)即是更新標識,否則為url
if [ $ -lt 3 ]; then
let num+=1skip=0
if [ "
$" == "d"
]; then
#下乙個應該跳過
skip=1fi
continue
fi
#若為刪除檔案則不必匯出
if [ $
-eq 1]; then
echo
$.'是刪除操作,跳過:'$
continue
fi
#替換得到相對路徑
diff_file=$/}
echo
$.' '$
file_name=`basename $
` folder_name=`dirname $
` folder_path="$$"
#echo $' '$' '$
if test ! -e "$"
; then
mkdir -p $
fi cmd="
svn export -r $ '$$' '$/$' --force"#
echo $
#echo $.' '
echo $|sh
done
echo -e "
版本號:"$
"->"$
"" $(date +"
%y-%m-%d %h:%m:%s
echo "完成
"else
echo
"版本間沒有差異
"fi
publish.sh 用法
比較兩個版本差異
publish.sh old_version new_version
publish.sh 2055 2056
linux svn 版本回滾
實踐經驗總結 1 svn log 檢視當前最新版本和需要回滾到的版本。假設當前最近版本是 r201526 需要回滾到的版本是 r197364 2 如果本地的 和版本r201526一致 無diff 這種情況下 svn merge r 201526 197364 svn ci m roll back t...
linux svn版本管理命令
1.svn merge回滾 1 先 svn up,保證更新到最新的版本,如2106 2 然後用 svn log 檢視歷史修改,找出要恢復的版本,如2105 如果想要更詳細的了解情況,可以使用svn diff r 2105 2106 檔案或目錄 3 回滾到版本號2105 svn merge r 210...
Linux svn 回滾版本庫
首先保證我們拿到的是最新 執行 svn up index 然後找出要撤銷的確切版本 svn log limit 10 index tpl css global.css根據log懷疑是16976版本改壞的,比較一下 svn diff r 16975 16976 index tpl css global...