SVN 分支合并修改合并到主幹上
在主幹分支上執行下面命令
$ svn merge --reintegrate 分支URL/album_mdl.php
--- Merging differences between repository URLs into 'album_mdl.php':
U album_mdl.php
--- Recording mergeinfo for merge between repository URLs into 'album_mdl.php':
U album_mdl.php
SVN 建立分支
執行一下命令可以建立一個分支。
$ svn cp -m 'create new branch for dev' http://主乾地址 http://分支地址
SVN刪除分支
$ svn rm http://分支地址 -m 'delete the dev branch'
SVN分支同步主幹最新內容
需要在分支目錄中執行如下命令
$ svn merge http://主乾地址
SVN復原緩衝的改變
$ svn revert . -R
SVN 替換服務地址
$ svn switch --relocate 原倉庫ROOT地址 新倉庫ROOT地址
實現SVN內容同步更新,當進行檔案提交的時候,自動將提交的內容更新到另一個位置。
如同步更新到Web伺服器以實現即時發布。
在倉庫目錄下的 hooks檔案夾下,建立post-commit.bat檔案。
@echo off
"D:\Program Files\VisualSVN\bin\svn.exe" update "E:\BaiDuYun\備份資料\SVN備份" –username testuser –password testpwd
如果出現檔案唯讀等錯誤,則需要修改Svn伺服器的執行許可權。
在服務中的SVN服務中修改SVN的登陸身份為administrator即可
清除目錄下所有的.svn檔案
find . -type d -name ".svn"|xargs rm -fr
該命令中,-type用於指定尋找的檔案類型,d為目錄類型(如果為f則為標準檔案),-name指定尋找的檔案名稱為.svn。
xargs命令將find尋找到的列表按照每一行分成一段,對每一段執行rm -fr命令。
對於xargs命令的使用,可以舉個例子,建立檔案touchlist.txt,檔案內容如下:
file1
file2
file3
file4
執行命令cat touchlist.txt|xargs touch,可以看到,目前的目錄下自動建立了如下檔案:
localhost:test mylxsw$ ll
total 8
-rw-r--r-- 1 mylxsw staff 0 9 12 11:56 file1
-rw-r--r-- 1 mylxsw staff 0 9 12 11:56 file2
-rw-r--r-- 1 mylxsw staff 0 9 12 11:56 file3
-rw-r--r-- 1 mylxsw staff 0 9 12 11:56 file4
-rw-r--r-- 1 mylxsw staff 24 9 12 11:55 touchlist.txt
要清理目錄下所有指定的檔案,可以使用命令find . -type f -name "*.xml" -print0|xargs -0 rm -fr,該命令解決了檔案名稱中包含空格而出現的xargs: unterminated quote錯誤。
移動指定目錄下指定類型的檔案
# find . -name "*.mkv"|xargs -I {} mv {} /dest/