2013-01-14 127 views
0

合作伙伴A在過去的6個月裏幫助我們建立了我們的網站。我們需要額外的技能組合,所以我們最近增加了合作伙伴B的幫助。據說,我們需要一種解決方案,使我們能夠在相同的代碼基礎上進行協作,同時最大限度地減少衝突;但是,我覺得我們正在考慮的解決方案增加了一層複雜性,並且忽略了git的優勢。與不同團隊合作

我們的解決方案是這樣的:

Partner A --> DevServer(A) --> StagingServer(A) 
               \ 
               StagingFinal --> Production 
              /
Partner B --> DevServer(B) --> StagingServer(B) 

概括地說,每個合作伙伴都有自己的開發和分期服務器,那麼我們會從每一個合作伙伴的臨時服務器推到最終階段服務器(在這裏我們將解決衝突),然後推向生產。

因爲我以前沒有和不同的團隊合作過,所以我想知道這是否是最好的方法。如果它有所作爲,我們目前是git-flow,並在Beanstalkapp中託管我們的代碼,但如果這樣可以讓事情變得更容易,我們可以使用github。

謝謝!

回答

3

在部署到StagingFinal之前合併代碼庫是一個非常糟糕的主意。您現在基本上在StagingFinal中擁有一個完全未經測試的代碼庫,因爲您無法預測兩個合作伙伴的變更可能會如何交互。

要解決此問題,請在每個合作伙伴部署到其DevServer之前引入「DevServerFinal」或合併代碼庫。