Git submodule vs Git子树vs依赖管理器CocoaPods

时间:2016-05-13 22:32:58

标签: ios git cocoapods git-submodules git-subtree

我有两个应用程序/项目 - 一个用于客户,一个用于工作人员。这两个项目都具有相同的后端API相关代码,相同的业务级别对象,相同的自定义GUI控件和一些功能。我想用共享代码替换相同的代码。例如,将此代码移动到单独的仓库。

由于两个项目都在开发中,所有内容(包括共享代码)都会经常更改。共享代码通常会作为这两个项目之一的一部分进行更新。

如果我需要一种简单的方法来频繁更新代码,那么在两个项目之间共享代码的最佳方法是什么?

我理想的用例如下:

  1. 我更改了客户项目(客户和共享代码)。
  2. 我承诺并将新的更改推送到客户仓库和共享代码仓库。
  3. 我打开工作项目,拉动共享代码,然后在需要反映共享代码更改的情况下更新工作代码。
  4. P.S。问题Differences between git submodule and subtreeGIT Nested repositories: Composer vs. SubModules vs. Subtree vs.?有很好的答案,但如果我需要一种简单的方法来频繁更新共享代码,我仍然不清楚应该选择什么。

1 个答案:

答案 0 :(得分:2)

我个人会使用一个git子模块,这是一个非常好的链接到共享代码库,它本身就是一个git存储库,可以单独管理,而不需要在其他项目中进行跟踪。

您可以在客户端和工作人员端使用git submodule foreach git pull origin master在更新共享库时引入更改。