2012-10-21 107 views
1

我有一個核心項目(一個Web應用程序),有幾個相關的服務隨之而來。Git倉庫中的多個項目

這些服務都讀取了核心項目的數據庫,所以每當更改數據庫模式時都必須更新所有項目。有時,當核心添加新功能時,還需要更改一些服務,但通常情況並非如此。這些服務與數據庫架構緊密集成,不能在其他應用程序中重用。

此外,還有另一個項目只是核心Web應用程序項目中的本機操作系統應用程序外觀,功能集略有減少(因此,放入核心Web應用程序的任何新功能都必須顯示在原生應用程序)。但是,無論何時發生數據庫模式更改,都必須更新它。

在這樣的項目周圍構建git repo的推薦方法是什麼?我一直認爲核心項目和服務應該一起存在於一個回購站中,但是當它感到奇怪時也會有本地應用程序(通過這種邏輯,當我們獲得iPad應用程序時,那麼它也會去那裏?似乎當時是一個巨大的混亂回購)。

有一點需要記住的是,我想遠離任何複雜的工作流程,因爲很多人不熟悉git。

回答

0

有一點需要記住的是,我想遠離任何複雜的工作流程,因爲很多人不熟悉git。

在這種情況下,坦率地說,我建議你只是把一切都在同一個存儲庫中。雖然子模塊隨着git的不斷髮展變得更加容易使用,但對於那些不熟悉git的人來說,它們仍然是一個常見的混淆來源。

如果你仔細地從存儲庫中排除生成的和大的二進制文件,你可能幾乎沒有注意到擁有一個也包含iPad應用程序等的存儲庫所使用的額外空間/帶寬,因爲git的對象存儲非常有效。

+0

如果你與一個曾經混帳的人打交道,你的答案會有什麼不同? –

+0

@Jarrod Everett:你可以創建一個只包含數據庫模式和數據庫遷移的存儲庫,並將其作爲子模塊添加到每個不同的項目中。我仍然傾向於將它們全部保存在一個存儲庫中,但是不知道有足夠的細節知道這是否合理 - 例如,如果某些代碼應該公開,但有些則不應該,那麼這強烈建議將它們分開製作。 –