玩轉SVN-版本回退

安全劍客發表於2019-10-14
Apache Subversion 通常被縮寫成 SVN,是一個開放原始碼的版本控制系統,Subversion 在 2000 年由 CollabNet Inc 開發,現在發展成為 Apache 軟體基金會的一個專案,同樣是一個豐富的開發者和使用者社群的一部分。
SVN相對於的RCS、CVS,採用了分支管理系統,它的設計目標就是取代CVS。網際網路上免費的版本控制服務多基於Subversion。

玩轉SVN-版本回退玩轉SVN-版本回退
當我們想放棄對檔案的修改,可以使用 SVN revert  命令

svn revert 操作將撤銷任何檔案或目錄裡的區域性更改。

我們對檔案 readme 進行修改,檢視檔案狀態。

root@runoob:~/svn/runoob01/trunk# svn status
M       readme

這時我們發現修改錯誤,要撤銷修改,通過 svn revert 檔案 readme 迴歸到未修改狀態。

root@runoob:~/svn/runoob01/trunk# svn revert readme 
Reverted 'readme'

再檢視狀態。

root@runoob:~/svn/runoob01/trunk# svn status 
root@runoob:~/svn/runoob01/trunk#

進行 revert 操作之後,readme 檔案恢復了原始的狀態。 revert 操作不單單可以使單個檔案恢復原狀, 而且可以使整個目錄恢復原狀。恢復目錄用 -R  命令,如下。

svn revert -R trunk

但是,假如我們想恢復一個已經提交的版本怎麼辦。

為了消除一箇舊版本,我們必須撤銷舊版本里的所有更改然後提交一個新版本。這種操作叫做 reverse merge。

首先,找到倉庫的當前版本,現在是版本 22,我們要撤銷回之前的版本,比如版本 21。

svn merge -r 22:21 readme

原文地址: https://www.linuxprobe.com/fun-svn-version.html

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2659843/,如需轉載,請註明出處,否則將追究法律責任。

相關文章