3分鐘練成SVN命令高手:SVN經常使用命令

首先推薦你們一個應該是國內外最好的SVN倉庫,不限私有,不限成員:http://svnbucket.comphp

# checkout代碼
svn co svn://svnbucket.com/xxx/xxx
# 更新代碼
svn up
# 添加新文件到版本庫
svn add filename

# 添加當前目錄下全部php文件
svn add *.php

# 遞歸添加當前目錄下的全部新文件
svn add . --no-ignore --force
# 提交代碼
svn commit -m "提交描述"
# 查看指定文件的全部log
svn log test.php

# 查看指定版本號的log
svn log -r 100
# 撤銷本地文件的修改(還沒提交的)
svn revert test.php
svn revert -r 目錄名

# 撤銷目錄下全部本地修改
svn revert --recursive 目錄名
# 查看當前工做區的全部改動
svn diff

# 查看當前工做區test.php文件與最新版本的差別
svn diff test.php  

# 指定版本號比較差別
svn diff -r 200:201 test.php

# 查看當前工做區和版本301中bin目錄的差別
svn diff -r 301 bin
# 查看當前工做區的狀態
svn status
# 查看svn信息
svn info
# 查看文件列表,能夠指定-r查看,查看指定版本號的文件列表
svn ls 
svn ls -r 100
# 顯示文件的每一行最後是誰修改的(出了BUG,常常用來查這段代碼是誰改的)
svn blame filename.php
# 查看指定版本的文件內容,不加版本號就是查看最新版本的
svn cat test.py -r 2
# 清理
svn cleanup
# 若想建立了一個文件夾,而且把它加入版本控制,但忽略文件夾中的全部文件的內容
$ svn mkdir spool 
$ svn propset svn:ignore '*' spool 
$ svn ci -m 'Adding "spool" and ignoring its contents.'
# 若想建立一個文件夾,但不加入版本控制,即忽略這個文件夾
$ mkdir spool 
$ svn propset svn:ignore 'spool' . 
$ svn ci -m 'Ignoring a directory called "spool".'
# 切換當前項目到指定分支。服務器上更新新版本咱們常常就用這個命令來把當前代碼切換到新的分支
svn switch svn://svnbucket.com/test/branches/online1.0

# 重定向倉庫地址到新地址
svn switch --relocate 原svn地址 新svn地址
# 建立分支,從主幹建立一個分支保存到branches/online1.0
svn cp -m "描述內容" http://svnbucket.com/repos/trunk http://svnbucket.com/repos/branches/online1.0

# 合併主幹上的最新代碼到分支上
cd branches/online1.0
svn merge http://svnbucket.com/repos/trunk 

# 分支合併到主幹
svn merge --reintegrate http://svnbucket.com/repos/branches/online1.0

# 刪除分支
svn rm http://svnbucket.com/repos/branches/online1.0
# 查看SVN幫助
svn help

# 查看指定命令的幫助信息
svn help commit

其餘相關教程

SVN快速上手
SVN鉤子解放你的雙手
輕鬆解決SVN衝突
SVN 和 Git 的一些誤解和真相
Mac用戶SVN圖形界面推薦
Eclipse安裝SVN插件和檢出代碼
相關文章
相關標籤/搜索