1. 程式人生 > >Mac必備:SVN常用命令

Mac必備:SVN常用命令

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

# 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

其他相關教程