SVN tag和branch的選擇及應用

2021-04-28 08:02:41 字數 712 閱讀 6302

在svn中branch/tag在乙個功能選項中,在使用中也往往產生混淆。

在實現上,branch和tag,對於svn都是使用copy實現的,所以他們在預設的許可權上和一般的目錄沒有區別。至於何時用tag,何時用branch,完全由人主觀的根據規範和需要來選擇,而不是強制的(比如cvs)。

一般情況下,

tag,是用來做乙個milestone的,不管是不是release,都是乙個可用的版本。這裡,應該是唯讀的。更多的是乙個顯示用的,給人乙個可讀(readable)的標記。

branch,是用來做並行開發的,這裡的並行是指和trunk進行比較。

比如,3.0開發完成,這個時候要做乙個tag,tag_release_3_0,然後基於這個tag做release,比如安裝程式等。trunk進入 3.1的開發,但是3.0發現了bug,那麼就需要基於tag_release_3_0做乙個branch,branch_bugfix_3_0,基於這 個branch進行bugfix,等到bugfix結束,做乙個tag,tag_release_3_0_1,然後,根據需要決定 branch_bugfix_3_0是否併入trunk。

對於svn還要注意的一點,就是它是全域性版本號,其實這個就是乙個tag的標記,所以我們經常可以看到,什麼什麼release,基於***專案的 2***x版本。就是這個意思了。但是,它還明確的給出乙個tag的概念,就是因為這個更加的可讀,畢竟記住tag_release_1_0要比記住乙個 很大的版本號容易的多。

SVN tag和branch的選擇及應用

在svn中branch tag在乙個功能選項中,在使用中也往往產生混淆。在實現上,branch和tag,對於svn都是使用copy實現的,所以他們在預設的許可權上和一般的目錄沒有區別。至於何時用tag,何時用branch,完全由人主觀的根據規範和需要來選擇,而不是強制的 比如cvs 一般情況下,ta...

SVN中tag和branch的區別

在svn中branch tag在乙個功能選項中,在使用中也往往產生混淆。在實現上,branch和tag,對於svn都是使用copy實現的,所以他們在預設的許可權上和一般的目錄沒有區別 至於何時用tag,何時用branch,完全由人主觀的根據規範和需要來選擇,而不是強制的 比如cvs 一般情況下,ta...

如何用好SVN的Branch

在svn裡面我們一般會建立出三個資料夾 trunk 主幹 branch 分支 tag 標籤 在我們專案一開始的時候我們會將 檔案 這邊暫時不涉及文件的管理 放在trunk底下。然後我們就不斷的開始工作了。什麼時候我們會用到branch。按我的經驗的話我們用到branch有兩種情況 專案穩定了要rel...