具有相同GIT子模块的多个Android项目

War*_*zit 5 eclipse git android git-submodules

我最近想submodulesGIT我的Android项目中采用,但偶然发现了一些问题.

背景故事

我有多个项目,但许多项目使用相同的外部库(Android库项目),以使GIT更清洁,并使每个项目的GIT包含我为Android库项目使用GIT子模块所需的所有材料.这部分工作正常我将库作为项目的子模块包含在内.

问题

但Android使用这些库项目,基本上是一个常规项目,它被添加到项目中,我只能在Eclipse中添加一次相同的项目.因此,如果我需要一次处理多个项目,我必须使用Eclipse/workspace的多个实例,而不是以常规方式使用Eclipse.

有没有办法在eclipse中只有一个我的库项目实例,同时所有项目都引用它们各自的库?或任何其他建议我应该如何处理这个?

非常感谢任何帮助

JJD*_*JJD 2

由于以下原因,您无法将库项目作为 Eclipse 中的单个实例。

  • 使用该库的每个项目可能会引用该库的不同版本。由于您的子模块是特定版本的物理签出(工作目录),因此无法在某个时间点表示存储库的多个状态。

解决方法:

  1. 为库项目准备一个“服务器”位置。使用创建克隆就足够了git clone --bare
  2. 将“服务器”库项目克隆到您的工作区中。
  3. 为库项目添加前缀以反映其所使用的主项目的名称。
  4. 对需要使用该库的每个主项目重复步骤 2 和 3。
  5. 每次在库项目中进行更改时都会创建一个功能分支。在每个主要项目中,请考虑新功能是否有用或有阻碍。如果它不适合,您显然需要重写您刚刚创建的功能。完成后更新库的版本(不要害羞使用带有语义版本控制的标签)。