(這是關於如何在CVS管理標準開發和客戶特定的發展後續問題我earlier question)限制推送的內容,以避免意外推到開發分支
我們在mercurial
中使用不同的分支來區分標準開發(開發我們的標準軟件)和客戶特定開發(開發客戶特定修改我們的標準軟件)。
所以,讓我們說,我們有如下分支:
- 默認(標準開發分支)
- revision1.0(標準開發分支的bugfixing)
- revision1.1(bugfixing的標準開發分支)
- customerA
當客戶A希望從1.0升級到1.1,我們只是拉從revision1.1到customerA(從 「revision1.0」 有一些變化的克隆)(和解決合併衝突)。到現在爲止還挺好。
我想避免的是開發人員意外地將某些客戶特定的代碼合併到標準開發分支中。我們可以通過Java命名空間來識別「客戶特定的代碼」。
有沒有辦法做到這一點?
編輯:改變「推」到「合併」,因爲這是正確的說法
如果你從修訂版1.1拉到customerA,我猜你正在爲每個「分支」使用單獨的克隆,而不是分支的mercurial定義? – Kindread
更可能是我的意思是「合併」而不是拉,但我同意,目前所寫的問題包含矛盾。 –
正確的術語似乎是_merge_,我編輯了這個問題。 –