linux svn版本管理命令

2021-10-04 20:19:08 字數 2986 閱讀 3859

1. svn merge回滾

1) 先 svn up,保證更新到最新的版本,如2106;

2) 然後用 svn log ,檢視歷史修改,找出要恢復的版本,如2105 。如果想要更詳細的了解情況,可以使用svn diff -r 2105:2106 [檔案或目錄];

3) 回滾到版本號2105:svn merge -r 2106:2105 [檔案或目錄],注意版本號之間的順序,這個叫反向合併;

4) 檢視當前工作版本中的檔案,如test.cpp和版本號10中檔案的差別:svn diff -r 2105 test.cpp, 有差別則手動改之;

5) 若無差別,則提交:svn ci -m「back to r 2105,***xx」 [檔案或目錄]。這時svn庫中會生成新的版本,如21。

2. 用svn up

前2步如方法1,然後直接 svn up -r 2105。當前的工作版本就是版本2105了。但是注意,這時svn庫中會並不會生成新的版本,下次在本地svn up之後,還是會回到之前的版本。

3、將檔案checkout到本地目錄

svn checkout path(path是伺服器 上的目錄)

例如:svn checkout svn:

簡寫:svn co

4、往版本庫中新增新的檔案

svn add file

例如:svn add test.php(新增test.php)

svn add *.php(新增當前目錄下所有的php檔案)

5、將改動的檔案提交到版本庫

svn commit -m 「logmessage「 [-n] [–no-unlock] path(如果選擇了保持鎖,就使用–no-unlock開關)

例如:svn commit -m 「add test file for my test「 test.php

簡寫:svn ci

6、加鎖/解鎖

svn lock -m 「lockmessage「 [–force] path

例如:svn lock -m 「lock test file「 test.php

svn unlock path

7、更新到某個版本

svn update -r m path

例如:svn update如果後面沒有目錄,預設將當前目錄以及子目錄下的所有檔案都更新到最新版本 。

svn update -r 200 test.php(將版本庫中的檔案test.php還原到版本200)

svn update test.php(更新,於版本庫同步。如果在提交的時候提示過期的話,是因為衝突,需要先update,修改 檔案,然後清除svn resolved,最後再提交commit)

簡寫:svn up

8、檢視檔案或者目錄狀態

1)svn status path(目錄下的檔案和子目錄的狀態,正常狀態不顯示)

【?:不在svn的控制中;m:內容被修改;c:發生衝突;a:預定加入到版本庫;k:被鎖定】

2)svn status -v path(顯示檔案和子目錄狀態)

第一列保持相同,第二列顯示工作版本號,第三和第四列顯示最後一次修改的版本號和修改人。

注:svn status、svn diff和 svn revert這三條命令在沒有網路的情況下也可以執行的,原因是svn在本地的.svn中保留了本地版本的原始拷貝。

簡寫:svn st

9、刪除 檔案

svn delete path -m 「delete test fle「

例如:svn delete svn:/test.php -m 「delete test file」

或者直接svn delete test.php 然後再svn ci -m 『delete test file『,推薦使用這種

簡寫:svn (del, remove, rm)

10、檢視日誌

svn log path

例如:svn log test.php 顯示這個檔案的所有修改記錄,及其版本號的變化

11、檢視檔案詳細資訊

svn info path

例如:svn info test.php

12、比較差異

svn diff path(將修改的檔案與基礎版本比較)

例如:svn diff test.php

svn diff -r m:n path(對版本m和版本n比較差異)

例如:svn diff -r 200:201 test.php

簡寫:svn di

13、將兩個版本之間的差異合併到當前檔案

svn merge -r m:n path

例如:svn merge -r 200:205 test.php(將版本200與205之間的差異合併到當前檔案,但是一般都會產生衝突,需要處理一下)

14、svn 幫助

svn help

svn help ci

linux svn版本比較

bin sh 匯出指定版本之間的差異檔案 如100到200之間的差異則匯出100 不包括 200 包括 的所有修改 svn url svn if eq 0 then echo you must useage like 0 old version1 不包括 new version 包括 exit 1f...

linux svn 版本回滾

實踐經驗總結 1 svn log 檢視當前最新版本和需要回滾到的版本。假設當前最近版本是 r201526 需要回滾到的版本是 r197364 2 如果本地的 和版本r201526一致 無diff 這種情況下 svn merge r 201526 197364 svn ci m roll back t...

linux svn命令大全

1 將檔案checkout到本地目錄 svn checkoutpath path是伺服器上的目錄 例如 svn checkout svn 192.168.1.1 pro domain 簡寫 svn co 2 往版本庫中新增新的檔案 svnaddfile 例如 svn add test.php 新增t...