svn 用戶端命令

來源:互聯網
上載者:User

常用svn命令說明

1、從SVN倉庫中檢索出代碼到工作拷貝:

# svn checkout https://svn.sinaapp.com/appname [workcopy]

其中workcopy是可選的,如果不寫workcopy,SVN會預設將appname做為workcopy。

如果只檢索某個版本:

# svn checkout https://svn.sinaapp.com/appname/appversion [workcopy]

只檢索某個版本的某個目錄:

# svn checkout https://svn.sinaapp.com/appname/appversion/folder [workcopy]

2、向SVN倉庫提交代碼:

# svn commit -m "here is message"

3、將本地檔案添加到工作拷貝:

# svn add something

註:如果something為檔案,svn會將這個檔案添加到工作拷貝;如果something是目錄,svn會將目錄及裡面的檔案全添加到工作 拷貝。something也可以是萬用字元*,這樣會忽略已經添加過的檔案。

4、從工作拷貝中刪除一個檔案:

# svn delete something

註:如果something為檔案,svn會將這個檔案從工作拷貝中刪除;如果something是目錄,svn會將目錄及裡面的檔案全部從工作 拷貝中刪除。

5、直接從SVN倉庫中刪除檔案:

# svn delete -m "delete something" https://svn.sinaapp.com/appname/appversion/something

註:可以從SVN倉庫中直接刪除單個檔案或單個目錄甚至某個版本。

6、將一個本地項目匯入到SVN倉庫:

匯入應用的某個版本:

# svn import localdir https://svn.sinaapp.com/appname/appversion

註:要確保目前應用的appversion不衝突。

7、查看工作拷貝中的檔案或目錄狀態:

# svn status [something]

8、更新自己的工作拷貝:

# svn update

註:從SVN倉庫下載最新版本,此命令會導致本地沒有提交的更改丟失,建議使用此命令前先查看一下本地拷貝狀態(svn status).

9、取消對代碼修改

取消對代碼的修改分為兩種情況。

第一種情況:改動沒有被提交(commit)。

這種情況下,使用svn revert就能取消之前的修改。

svn revert用法如下:

# svn revert [-R] something

其中something可以是(目錄或檔案的)相對路徑也可以是絕對路徑。

當something為單個檔案時,直接svn revert something就行了;當something為目錄時,需要加上參數-R(Recursive,遞迴),否則 只會將something這個目錄的改動。

在這種情況下也可以使用svn update命令來取消對之前的修改,但不建議使用。因為svn update會去串連倉程式庫伺服器,耗費時間。

注意:svn revert本身有固有的危險,因為它的目的是放棄未提交的修改。一旦你選擇了恢複,Subversion沒有方法找回未提交的修 改。

第二種情況:改動已經被提交(commit)。這種情況下,用svn merge命令來進行復原。

復原的操作過程如下:

1) 保證我們拿到的是最新代碼:

svn update

假設最新版本號碼是28。

2) 然後找出要復原的確切版本號碼:

svn log [something]

假設根據svn log日誌查出要復原的版本號碼是25,此處的something可以是檔案、目錄或整個項目

如果想要更詳細的瞭解情況,可以使用svn diff -r 28:25 [something]

3) 復原到版本號碼25:

svn merge -r 28:25 something

為了保險起見,再次確認復原的結果:

svn diff [something]

發現正確無誤,提交。

4) 提交復原:

svn commit -m "Revert revision from r28 to r25,because of ..."

提交後版本變成了29。

將以上操作總結為三條如下:

a. svn update,svn log,找到最新版本(latest revision)

b. 找到自己想要復原的版本號碼(rollbak revision)

c. 用svn merge來復原: svn merge -r : something

10、查看SVN倉庫日誌資訊:

# svn log [workcopy]

查看所有本地的曆史日誌,如果workcopy為某檔案,那麼就是查看某個檔案的日誌資訊。

查看SVN倉庫所有檔案的日誌資訊:

# svn log https://svn.sinaapp.com/appname/

這個命令會查看所有修改過的日誌。

註:SAE提供的SVN服務完全支援標準SVN的所有命令,更詳細的使用說明請查閱SVN官方協助文檔。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.