天天看點

svn代碼復原指令 svn revert

取消對代碼的修改分為兩種情況:   第一種情況:改動沒有被送出(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。    将以上操作總結為三條如下:    1. svn update,svn log,找到最新版本(latest revision)    2. 找到自己想要復原的版本号(rollbak revision)    3. 用svn merge來復原: svn merge -r : something

原文位址:http://www.cnblogs.com/jndream/archive/2012/03/20/2407955.html

svn

繼續閱讀