我一直在使用Clear Case,而且我開始使用Subversion。在Subversion中,關於分支版本編號的混淆
現在我很困惑,如果分支機構的修訂版本號從0 開始,或者它的 從中繼線的HEAD修訂版本號開始。
另一個問題,我在Trunk上提交後, ,我很困惑,如果分支的最新版本是相同的Trunk的HEAD版本。
在此先感謝。
我一直在使用Clear Case,而且我開始使用Subversion。在Subversion中,關於分支版本編號的混淆
現在我很困惑,如果分支機構的修訂版本號從0 開始,或者它的 從中繼線的HEAD修訂版本號開始。
另一個問題,我在Trunk上提交後, ,我很困惑,如果分支的最新版本是相同的Trunk的HEAD版本。
在此先感謝。
在Subversion版本庫的修訂版本號是全球性的,即它們應用到整個倉庫,包括trunk
,tags
和branches
。
這本書「版本控制使用Subversion」的部分可能對你有用:
想,如果版本的,分支,並在合併顛覆你不應該施加任何的ClearCase的經驗(除了系統變更管理)的概念。它完全不同。
樹幹和樹枝顛覆對稱獨立的文件夾。當一個人分支出另一個時,它實際上是一個輕量級的寫入時複製。
修訂是庫的全局狀態,而不是單個元件的狀態,這就是爲什麼你看到「分支的最新版本是一樣的主幹最新修訂版」。
在顛覆,在創建時的每個新版本庫將在修訂版1開始。
所有修訂是每個倉庫獨特和增量,不管你是否提交到主幹,分支或創建一個標籤。
所以你會得到修訂版本號是這樣的:
Commit to Trunk - rev 1
Commit to Trunk - rev 2
Commit to Branch - rev 3
Commit to Trunk - rev 4
Subversion的修訂版本號是嚴格單調。如果你犯得版本號ñ那麼接下來的提交將修訂,無論在哪裏回購的東西被提交的ñ +1。它甚至可能是在同一回購協議中的不同項目。
謝謝,它與ClearCase不同。 –