1、將文件checkout到本地目錄
1 svn checkout path(path是服務器上的目錄) 2 例如:svn checkout svn://192.168.1.1/svn 3 簡寫:svn co
2、往版本庫中添加新的文件
1 svn add file 2 例如:svn add test.php(添加test.php) 3 svn add *.php(添加當前目錄下所有的php文件)
3、將改動的文件提交到版本庫
1 svn commit -m “LogMessage“ [-N] [--no-unlock] PATH (如果選擇了保持鎖,就使用–no-unlock開關) 2 例如:
svn commit -m “add test file for my test“ test.php 3 簡寫:
svn ci
4、加鎖/解鎖
1 svn lock -m “LockMessage“ [--force] PATH 2 例如:svn lock -m “lock test file“ test.php 3 svn unlock PATH
5、更新到某個版本
1 svn update -r m path 2 例如: 3 svn update如果后面沒有目錄,默認將當前目錄以及子目錄下的所有文件都更新到最新版本。 4 svn update -r 200 test.php(將版本庫中的文件test.php還原到版本200) 5 svn update test.php(更新,於版本庫同步。如果在提交的時候提示過期的話,是因為沖突,需要先update,修改文件,然后清除svn resolved,最后再提交commit) 6 簡寫:svn up
6、查看文件或者目錄狀態
1 svn status path(目錄下的文件和子目錄的狀態,正常狀態不顯示) 2 【?:不在svn的控制中;M:內容被修改;C:發生沖突;A:預定加入到版本庫;K:被鎖定】 3 svn status -v path(顯示文件和子目錄狀態) 4 第一列保持相同,第二列顯示工作版本號,第三和第四列顯示最后一次修改的版本號和修改人。 5 注:svn status、svn diff和 svn revert這三條命令在沒有網絡的情況下也可以執行的,原因是svn在本地的.svn中保留了本地版本的原始拷貝。 6 簡寫:svn st
7、刪除文件
1 svn delete path -m “delete test fle“ 2 例如:svn delete svn://192.168.1.1/pro/domain/test.php -m “delete test file” 3 或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推薦使用這種 4 簡寫:svn (del, remove, rm)
8、查看日志
1 svn log path 2 例如:svn log test.php 顯示這個文件的所有修改記錄,及其版本號的變化
9、查看文件詳細信息
1 svn info path 2 例如:svn info test.php
10、比較差異
1 svn diff path(將修改的文件與基礎版本比較) 2 例如:svn diff test.php 3 svn diff -r m:n path(對版本m和版本n比較差異) 4 例如:svn diff -r 200:201 test.php 5 簡寫:svn di
11、將兩個版本之間的差異合並到當前文件
1 svn merge -r m:n path 2 例如:svn merge -r 200:205 test.php(將版本200與205之間的差異合並到當前文件,但是一般都會產生沖突,需要處理一下)
12、SVN 幫助
1 svn help 2 svn help ci
13、版本庫下的文件和目錄列表
1 svn list path 2 顯示path目錄下的所有屬於版本庫的文件和目錄 3 簡寫:svn ls
14、創建納入版本控制下的新目錄
15、恢復本地修改
svn revert: 恢復原始未改變的工作副本文件 (恢復大部份的本地修改)。revert: 2 用法: revert PATH… 3 注意: 本子命令不會存取網絡,並且會解除沖突的狀況。但是它不會恢復 4 被刪除的目錄
16、代碼庫URL變更
17、解決沖突
1 svn resolved: 移除工作副本的目錄或文件的“沖突”狀態。 2 用法: resolved PATH… 3 注意: 本子命令不會依語法來解決沖突或是移除沖突標記;它只是移除沖突的 4 相關文件,然后讓 PATH 可以再次提交。