目前手上有一個Web Service專案
有一個 master 主要分支
該Web Service提供10方法供外部呼叫使用
後來因為客戶端需求不同
建立了 A和 B分支
分別 For A客戶和B客戶的需求
A分支和master有3個方法的部份程式寫法不同
B分支和master有5個方法的部份程式寫法不同
平常都是修改master再將共同修改的部份合併到A和B分支
而A和B的各自的修改則不合併為master
現在C客戶也提出不一樣的需求
目前有考慮新開 C 分支來For C 客戶就好
因為如果有共同的修改可以直接從master直接合併過來
但又覺得分支越開越多
是否會過於雜亂
因為後來會不會又有 D 或 E 客戶的出現不確定
請問像這樣的情況應該是繼續開分支就好
維持目前一客戶版本一分支的情況
還是應該將各個需求獨立出來建立獨立的版控
如果描述不清楚的地方敬請見諒
我會隨時上來補充
謝謝
把專案分層
把客製化的產品用專案的方式分支出去
把共同的邏輯切在一個專案不分枝
客製化專案,用了某個時間點,把穩定共用的部分上提至共同的邏輯
由客製化的專案去參照共同邏輯專案
這個不是分支的用法
是設定規則的問題
規則設定
是同一套系統
上線時勾選不同企業規則
或
上線時在規則引擎寫不一樣的企業規則
可以參考我們的 groovy + mda 系統架構
如果每一個客戶想要不同畫面
如果每一個客戶想要不同運算
如果每一個客戶想要不同驗證規則
一定要企業規則引擎:: 可讓客戶去設定
一定有動態驗證引擎:: 可讓客戶去設定
請洽 技術轉移顧問 Albert Chen
![](<br />
http://ithelp.ithome.com.tw/upload/images/20140920/20140920070702541cb7163301a.png<br />
)
![](<br />
http://ithelp.ithome.com.tw/upload/images/20140920/20140920070605541cb6dddc6eb.jpg<br />
)