學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > windows教程 > SVN命令有哪些

SVN命令有哪些

時間: 志恒944 分享

SVN命令有哪些

  向大家描述一下版本控制工具SVN使用方法,在學(xué)習(xí)SVN過程中這是必須要掌握的知識,在這里學(xué)習(xí)啦小編和大家分享一下,歡迎大家和我一起學(xué)習(xí)SVN使用方法。

  SVN命令行

  SVN幫助:svnhelp

  (1)svn import [PATH] URL

  將未納入版本控制的文件或目錄樹提交到版本庫。遞歸地提交PATH的副本至URL。如果省略PATH,則默認(rèn)為“.”

  (2)svn checkout URL [@REV]...[PATH]

  從版本庫簽出工作副本。如果指定REV,那么它確定了從URL首先查找的版本。如果省略路徑參數(shù),則URL最末尾的目錄名作為目標(biāo)目錄名。如果指定多個URL,則依次將其簽出到PATH的子目錄中,子目錄名就是URL最末尾的目錄名。

  (3)svn add PATH

  把文件和目錄納入版本控制,通過調(diào)度加到版本庫。它們會在下一次提交時加入。

  (4)svn commit [PATH...]

  commit(ci):把工作副本的修改提交到版本庫。常用參數(shù):-m[--message]ARG:指定日志信息ARG

  (5)svn update [PATH...]

  將版本庫的修改合并到工作副本中。如果沒有指定版本,則將工作副本更新到HEAD版本。否則同步到-r選項所指定的版本。

  (6)svn delete PATH -m "deletetestfle"

  或者直接svndeletetest.php然后再svnci-m'deletetestfile‘,推薦使用這種簡寫:svn(del,remove,rm)

  用法:1、deletePATH...

  2、delete URL...

  1、每個PATH指定的項目會被調(diào)度到下次提交時從版本庫刪除。除非給出--keep-local參數(shù),工作副本中沒有提交的文件和目錄會被立即刪除。如果PATH是未版本控制或者已修改的項目,或者包含這些項目,那么僅當(dāng)給出--force參數(shù)時這些項目才會被刪除。

  2、每個URL指定的項目會通過立即提交從版本庫中刪除。

  (7)svn mkdir:創(chuàng)建納入版本控制的新目錄。

  用法:1、mkdirPATH...

  2、mkdir URL...

  1、每個以工作副本PATH指定的目錄,都會在本地創(chuàng)建,并且加入增加調(diào)度,直到下次提交。

  2、每個以URL指定的目錄,都會通過立即提交在版本庫中創(chuàng)建。

  (8)svn revert PATH...:將工作副本文件恢復(fù)到原始版本(恢復(fù)大部份的本地修改)。注意:本子命令不會訪問網(wǎng)絡(luò),它解除任何沖突的狀態(tài)。但是,它不恢復(fù)被刪除的目錄。

  (9)版本控制SVN使用其他命令還有:

  摘自:http://blog.chinaunix.net/u1/38994/showart_487961.html

  加鎖/解鎖svn lock -m "LockMessage" [--force] PATH

  例如:svn lock -m "locktestfile" test.php

  svnunlockPATH

  查看文件或者目錄狀態(tài)

  1)svn status path(目錄下的文件和子目錄的狀態(tài),正常狀態(tài)不顯示)【?:不在svn的控制中;M:內(nèi)容被修改;C:發(fā)生沖突;A:預(yù)定加入到版本庫;K:被鎖定】

  2)svn status -v path(顯示文件和子目錄狀態(tài))

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

  注:svn status、svn diff和svn revert這三條命令在沒有網(wǎng)絡(luò)的情況下也可以執(zhí)行的,原因是svn在本地的.svn中保留了本地版本的原始拷貝。

  簡寫:svn st

  查看日志svn log path

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

  查看文件詳細(xì)信息svn info path

  例如:svn info test.php

  比較差異svn diff path(將修改的文件與基礎(chǔ)版本比較)

  例如:svn diff test.php

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

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

  簡寫:svn di

  將兩個版本之間的差異合并到當(dāng)前文件svn merge -r m:n path

  例如:svn merge -r 200:205 test.php(將版本200與205之間的差異合并到當(dāng)前文件,但是一般都會產(chǎn)生沖突,需要處理一下)版本庫下的文件和目錄列表svn list path

  顯示path目錄下的所有屬于版本庫的文件和目錄

  簡寫:svn ls

  版本控制SVN使用中解決沖突svn resolved:移除工作副本的目錄或文件的“沖突”狀態(tài)。

  用法:resolved PATH...

  注意:本子命令不會依語法來解決沖突或是移除沖突標(biāo)記;它只是移除沖突的相關(guān)文件,然后讓PATH可以再次提交。

  輸出指定文件或URL的內(nèi)容。svn cat目標(biāo)[@版本]...如果指定了版本,將從指定的版本開始查找。svn cat-rPREVfilename>filename(PREV是上一版本,也可以寫具體版本號,這樣輸出結(jié)果是可以提交的)

  代碼庫URL變更svn switch(sw):更新工作副本至不同的URL。

  用法:1、switch URL[PATH]

  2、switch--relocate FROM TO [PATH...]

  1、更新你的工作副本,映射到一個新的URL,其行為跟“svn update”很像,也會將服務(wù)器上文件與本地文件合并。這是將工作副本對應(yīng)到同一倉庫中某個分支或者標(biāo)記的方法。

  2、改寫工作副本的URL元數(shù)據(jù),以反映單純的URL上的改變。當(dāng)倉庫的根URL變動

  (比如方案名或是主機(jī)名稱變動),但是工作副本仍舊對映到同一倉庫的同一目錄時使用這個命令更新工作副本與倉庫的對應(yīng)關(guān)系。本節(jié)關(guān)于版本控制SVN使用介紹完畢。

2023225