2013-03-19 57 views
7

您好一個項目,我有一個具有幾個不同的應用程序,這些都是應用程序:最佳Git的策略在多個平臺上

  1. 「客戶端服務器」應用程序(JAVA)
  2. 「許可證服務器」應用程序(Java )(我用git部署該應用的Heroku)
  3. 「自動更新應用程序」(JAVA)
  4. 「客戶端應用程序」(Objective-C的)

所有我知道的git是標準提交命令和類似的東西,我有一個github會員5個私人存儲庫。所以我想知道什麼是最好的方式來利用這個git?可能的答案是:

  1. 創建一個git倉庫並將這些獨立的項目放在「分支」中?
  2. 創建一個單一的git倉庫,並把這些項目放在單獨的fodlers中?
  3. 只需將它們放入不同的git存儲庫?

感謝您的回答。

+0

感謝您的回答,希望我能接受所有答案:) – dreampowder 2013-03-19 08:58:41

回答

7

我會根據是否直接從Git部署應用程序做出決定。我會看看選項2)和3)的組合 - 我肯定會將許可證服務器應用程序放入其自己的存儲庫中,因爲它正在部署到Heroku。我對Heroku部署不太熟悉,但它可能會部署所有特定分支中的所有內容,所以如果您將所有應用程序添加到同一個倉庫中的文件夾中,那麼它們將全部部署到Heroku。這可能不是你想要的。

如果不同的開發人員/團隊在不同的應用程序上工作,如果應用程序位於他們自己的獨立存儲庫中,他們會發現更容易。

忘了1) - 分支只是一個指向提交的指針,所以不要將不同的項目添加到不同的分支。

+0

分隔heroku應用程序形式的其他項目,把其他項目在sperate文件夾看起來像要走的路..謝謝 – dreampowder 2013-03-19 08:58:16

2

拙見在這裏:

  1. 分行把這個東西是definitly錯了,混帳的代碼分支始終代表「相同」的代碼庫的不同狀態
  2. 我不會做,要麼,雖然如果兩個服務器和兩個應用程序相互依賴,那麼將它們放在同一個存儲庫中可能是一個好主意,這將是我最喜歡的
  3. 如果4個應用程序不相交,那麼這就是要走的路。
4
  1. 創建一個混帳回購協議,並把這些獨立項目「分支」?
  2. 創建一個單一的git倉庫,並把這些項目放在單獨的fodlers中?
  3. 只需將它們放入不同的git存儲庫?

我會去與2.

根據各種應用程序/項目的大小或它們的獨立性,您可能會考慮使用,但它可能會增加太多開銷。 git甚至可以非常有效地處理大型存儲庫。單個存儲庫還可以使發佈過程更加簡單,因爲您可以整體標記/分支應用程序,而無需在不同的存儲庫中執行。

選項不是要走的路 - 您通常使用分支機構進行功能開發,修復錯誤和管理版本。另見A successful Git branching model


基於註釋和其他答案,如果我想進一步,這主要取決於項目之間的依賴關係。我肯定會用2.爲客戶端和服務器應用程序,並且很可能還包括自動更新應用程序。

正如其他人寫道,如果許可證服務器真的是獨立的(那麼許可證服務器的客戶端部分呢?),使用這個部分的單獨的存儲庫可能是正確的解決方案。我的看法是,使用多個存儲庫可能會使發佈過程複雜化,並且會影響設置開發人員環境的過程。最後,解決方案可能真的是2.3.之間的合適平衡,這取決於項目如何依賴或獨立。

+0

「。」在鏈接的末尾打破鏈接:)但我現在正在閱讀 – dreampowder 2013-03-19 08:59:54

+0

謝謝:)修正了它。 – 2013-03-19 09:00:59

+0

我想知道爲什麼2不是3? – MichK 2013-03-19 09:01:01