我有一個基礎網站項目,我用它作爲幾個客戶的起點。每個客戶都可以對項目進行特定的更改,這些項目我不想包括在基礎項目中。然而,有時一個特定的客戶功能在基礎項目中包含並推送給所有其他客戶(如錯誤修復)是有意義的。git項目的多個版本
現在我有TFS的項目設置,以便每個客戶是基礎項目的分支。它通過將更改合併到每個分支中來工作,但這是一個非常緩慢的過程。我想切換到git(在github上),所以我可以在本地執行這些操作並減少在這些操作上花費的時間。
閱讀噸的文章後,這是我的結論至今:
- 的Git分支不會在我的情況很好地工作。我爲每個項目需要不同的文件夾,所以我可以同時運行這些站點。
- 將子代碼「子模塊化」到每個客戶回購中似乎不是正確的解決方案,因爲基礎不是項目中的子文件夾,而是「項目」。
- 採櫻桃謬誤的變更要求的基礎遠程添加到客戶項目和看似複雜(我haven't能夠讓它工作至今)
所以據我瞭解,我應該創建每個新客戶的新回購,最初從基地複製代碼,並創建用於在項目間移動更改的補丁(我不關心歷史記錄)。我也許可以採用這種方法,特別是如果我可以創建一個自動化過程的工具。
有人可以告訴我,如果我在正確的軌道上,我應該如何去理想地添加新的網站(記住工作流應該爲幾個開發人員工作)。
在此先感謝
你的答案的中間部分看起來很有趣。但是,如果我只有一個存儲庫,那麼所有分支將存在於該存儲庫中,這可能變得很難維護。想象一下,每個客戶都擁有自己的生命週期,具有部署/修補程序/開發分支。我想我真正想做的(概念上)是爲每個客戶分配主要項目,但顯然這是不可能的。 – jbc
嗯,我發現這個解決方法http://bitdrift.com/post/4534738938/fork-your-own-project-on-github分叉你自己的項目。我想我會試試看。我唯一擔心的是,如果我能夠只吸引某些變化,並且能夠將客戶項目的變化推到基地。 – jbc