2011-06-08 118 views
1

我發佈工程師,我只是換了新公司。因爲我的角色需要 在新公司中設置構建過程。我們在這裏使用svn進行版本控制。創建標籤/日用標籤構建

在我以前的經驗,它一直是一個慣例,每一個版本將是 伴隨着標籤。在這裏定義新進程的同時,我試圖通過 來驗證每個構建是否真的需要這個標記。

這裏有一些優點和缺點,我能想到

優點的:

  • 倘使我們要比較兩個版本
  • 沒有單獨的需要標記不同的里程碑版本。如果在構建時沒有自動創建,那麼這將是手動過程。
  • 這使其更容易恢復到「已知好身材」當事情可怕的錯誤,或者當一些怪異不可能找到的錯誤被發現。

缺點:

  • 在長期運行tags目錄 變得混亂,並創建 性能問題,如果 標籤的數量是在一個文件夾中的高。
  • 在 庫注意到unnessary空間操作(雖然它是可以忽略的 在SVN的情況下)

是否有任何其他的優點或缺點除上述之外的其它?

回答

2

其實,如果你是在談論SVN,還有的TAGS沒有這樣的概念。這些僅僅是分支機構的另一個邏輯副本。即使你創建了它們,舊的可以隨時刪除。

Subversion中的viz-a-viz概念是Revision
當你從SVN,每個樹(幹線/支線)建設將具有與其相關的唯一版本號,並用代碼的特定分支或主幹,整個的版本號的任何地方每個連續入住手續樹會增加一個。 因此,對於一個特定的版本號的特定分支/主幹,將永遠是相同的

我建議你構建的版本號追加到構建的名稱。通過這種方式,您可以知道特定分支的構建版本。如果需要進行比較,則只需比較該分支的當前版本的修訂版與先前版本的修訂版。簡單!

因此,實際上不需要標籤。

+0

如果我是正確的SVN的複製操作僅僅是(直到新的分支沒有被修改)與特定版本的標籤聯繫起來。在這種情況下,爲我的感覺打造標籤並不會是一個代價高昂的操作。不過,我同意你的觀點。 將版本號與版本相關聯是一個很好的建議,我會看到在我的環境中它是如何可行的。 – 2011-06-08 09:57:44

+1

是的,正如我所說的......將標籤與特定版本相關聯不會花費您的時間,直到該標籤/分支被修改。但是,從邏輯上講,這不是最好的/理想的方法。另外,如果您仍然決定繼續使用標籤,我建議您使用SVN預先提交掛鉤來防止標籤修改 – Arpit 2011-06-08 10:13:20