2013-01-16 91 views
1

當前我們正在使用將代碼庫標記爲CVS中的生產代碼的過程,然後進行正常開發。提交中繼和新標籤可能會發生,但prod標籤只有在產品發佈之前才能更改,此時prod發行版的標籤將成爲新的prod標籤。所以無論何時需要生產代碼,只需要檢出prod標籤。在更傳統的開發過程中,prod標籤基本上就像行李箱頭一樣。跟蹤SVN中的現有標籤

我們現在正在移動到SVN,並計劃保持當前的方法。我想知道在SVN中爲特定代碼庫維護生產標籤的最佳/標準方法是什麼?是否有可能創建一個永遠不會更改的標籤,直到生產代碼將被合併到標籤中爲止?具有生產標籤歷史記錄的能力也不錯。

回答

2

不好的消息給你:你必須改變習慣。標籤是Subversion(通常)是不可變的,即關係URL-OF-TAG < - >版本在項目生命週期中不會(不會)發生變化。

您可以:

  1. 忽略的公約,並重新創建PROD標籤上發佈的每一次。即
  2. 使用在回購外幹線任何路徑分支(可變子樹):「只有MergeTo」併合並該PROD發佈的代碼
    • 創建PROD首次svn cp REPO/[email protected] REPO/PROD... REPO/branches/PROD
    • 在每下一個版本的合併幹線(或釋放標籤或版本分支的HEAD)到PROD
  3. 使用的外部
    • 創建PROD第一次:在外部組件庫中的一些點(樹和歷史)(:在一些地方(從第2頁筆記都適用)「虛擬文件夾」使用SVN添加我將添加PROD到分支機構,將在樹幹根目錄上使用propset)svn propset svn:externals . branches/PROD REPO/[email protected] & svn ci &svn up
    • 對於下一個版本:更改PROD svn propedit svn:externals .的外部資源的定義(再次在trunk的根目錄中)並替換(交互式,在文本中 - 編輯)REPO/[email protected]到新路徑(易於自動化propedit可以用propdel + propset替換)
+0

我認爲,外部是最好的方式去 – nasirbest