SVN是Subversion的簡稱,是一個開放源代碼的集中式的版本控制系統,相較於RCS、CVS,它採用了分支管理系統,它的設計目標就是取代CVS。但是相比較於分佈式的Git分佈式版本管理系統還是有很大的差距,目前新項目幾乎統一採用的是Git作爲版本管理工具,但是很多公司的老項目依舊採用的是svn管理,所以在這裏還是總結一下日常使用svn的筆記:
svn checkout url從svn服務器檢出相應分支的代碼
svn list -- 顯示一個目錄或某一版本存在的文件列表
svn cat -- 顯示特定版本的某文件內容
svn switch url切換分支到指定分支上面
svn status查看本地分支的改動情況
svn log url 顯示svn 的版本log,含作者、日期、路徑等
svn diff 對比版本中改動的信息
例:
svn diff -r 2 #比較你的本地代碼和版本號爲3的所有文件的不同。
svn diff -r 3 text.c #比較你的本地代碼和版本號爲3的text.java文件的不同。
svn diff -r 5:6 #比較版本5和版本6之間所有文件的不同。
svn diff -r 5:6 text.c #比較版本5和版本6之間的text.java文件的變化。
svn diff -c 6 test.c #比較版本5和版本6之間的text.java文件的變化。
svn add file_path 添加本地文件或是目錄到本地版本庫緩存區
svn revert 撤銷本地改動
svn commit -m "改動說明" 提交本地版本庫緩衝區的所有改動
svn info 查看當前分支的信息
svn help 查看svn相關幫助信息
svn log --stop-on-copy 查看分支從創建從目前修改日誌
svn merge -r version:HEAD url --dry-run 預合併分支(version版本開始)到當前分支的HEAD後
svn merge -r
version:HEAD url 合併
svn resolved file 解決衝突