我有一個軟件倉庫。我將發佈具有此軟件不同功能的不同版本,但它們都共享相同的基本功能和代碼庫。 我想出了3種可能的解決方案發佈相同軟件的不同版本,你應該分叉還是分支?
- 應該每個版本都有自己的分支在主要的回購?
- 每個版本是否應該從主庫中分出來?
- 完全獨立的每個版本的回購。
還有什麼其他的選擇,哪一個是最好的?
我有一個軟件倉庫。我將發佈具有此軟件不同功能的不同版本,但它們都共享相同的基本功能和代碼庫。 我想出了3種可能的解決方案發佈相同軟件的不同版本,你應該分叉還是分支?
還有什麼其他的選擇,哪一個是最好的?
可能會引導你思考幾個問題:如果一個變化是對一個版本進行
1),你想這種變化反映在其他(縣)?這包括保持功能同步,並統一應用錯誤修正。
2)你喜歡爲自己創造不必要的工作嗎?
如果對(2)的回答是「是」,那麼我當然會看到多個回購的吸引力。 (1)的答案是「否」,那麼我假設(2)的答案必須是「是」。如果對(1)的答案是「是」並且對(2)的答案是「否」,那麼你想要一個代碼庫 - 這意味着一個單一的回購。我甚至不會使用單獨的分支;通過適當的構建工具,這可以在一個完全集成的代碼庫中處理。
如果您在管理構建工具/ CI,然後我會建議使用多個分支,這種方式不親用戶,
如果它不是基於意見的,這似乎更適合程序員.SE,因爲它是關於軟件開發生命週期,而不是專門編程。 –
以下是您的練習:確切地說,分支*和克隆*之間的區別是什麼? (如果你使用Mercurial,做這個練習就顯得尤爲重要,因爲製作一個新的克隆是啓動分支的一種更爲常用的方法。)順便說一下,這次練習的重點不在於(僅)知道答案,而是而是讓你思考你打算如何使用版本控制系統。 – torek