2016-05-13 172 views
3

我有兩個應用程序/項目 - 一個用於客戶,另一個用於工作人員。這兩個項目都有相同的後端API相關代碼,相同的業務級別對象,相同的自定義GUI控件和一些功能。我想用共享的代碼替換相同的代碼。例如將此代碼移至單獨的回購。Git子模塊vs Git子樹vs依賴管理器CocoaPods

由於兩個項目都在開發中,所有內容(包括共享代碼)都會經常更改。共享代碼通常會作爲這兩個項目之一的一部分進行更新。

如果我需要一個簡單的方法來頻繁更新它,那麼在兩個項目之間共享代碼的最佳方式是什麼?

我理想中的用例將是以下幾點:

  1. 我改變客戶項目(客戶和共享代碼)。
  2. 我承諾並推出對客戶回購和共享代碼回購的新更改。
  3. 我打開工人項目,爲共享代碼做拉,然後更新工人代碼,如果它需要反映共享代碼更改。

P.S.問題Differences between git submodule and subtreeGIT Nested repositories: Composer vs. SubModules vs. Subtree vs.?有很好的答案,但是如果我需要簡單的方法來頻繁更新共享代碼,我應該選擇什麼樣的方式仍然不清楚。

回答

2

我會親自使用一個git子模塊,它是一個非常好的鏈接到一個共享的代碼庫,它本身就是一個git倉庫,可以單獨管理而無需在其他項目中跟蹤。

在共享庫更新時,您可以在客戶端和工作端都使用git submodule foreach git pull origin master來引入更改。

+1

子模塊不適合這種情況嗎? – Avt

+0

這正是我所說的 –

+0

你解決了你的問題嗎? –