【问题标题】:How do I setup my Git repositories for Android development in Eclipse?如何在 Eclipse 中为 Android 开发设置 Git 存储库?
【发布时间】:2011-03-24 18:03:21
【问题描述】:

我需要一些帮助来正确地使用 Git/Eclipse 对我的 Android 项目进行版本控制。
使用单个 Android 项目进行设置没有问题。

但是,如果我将一个或多个第三方 Android 库添加到我的主项目(例如 Facebook SDK),我正在尝试找出正确的设置方法。

所以目前我正在使用git-submodules 来完成此操作,这是我的目录结构:

/project/android-main.git
   +--- /project/android-main/facebook-sdk

我在 android-main 项目中添加了 facebook-sdk 作为 git 子模块。
在 Eclipse 工作区的 android-main 项目中,我看到了子文件夹“facebook-sdk”。

然后是 kludge
我必须从 /project/android-main/facebook-sdk 导入“现有项目”作为新项目,以便我可以将此项目作为库引用我的android-main 项目。

最后,Eclipse 工作区有三个对'facebook-sdk'的引用

  1. 工作区中的项目本身。
  2. 因为我将它添加为git-submodule,所以它在android-main 项目中显示为一个文件夹。
  3. 另一个文件夹“facebook_sdk_src”由android-main项目中的Android SDK插件创建。

如果我添加更多子模块,这似乎会使工作区和主项目变得混乱。
我做得对吗?
有没有更好的方法将 Android 库用作 Eclipse 中的子模块?

【问题讨论】:

  • 您当前的解决方案与stackoverflow.com/questions/5091946/…有些相似
  • 是 1 和 2 不同的检出(修改一个文件不会影响另一个)?听起来 1 是远程的克隆,2 是本地的子模块克隆。
  • 如果您有两个结帐,则不需要将项目本身放在工作区中。您可以直接从远程添加子模块。

标签: android eclipse git git-submodules egit


【解决方案1】:

我所有的 Android 项目都处于同一级别。 Eclipse 将每个项目显示两次:在工作区(workspace/library)和引用它的项目内部(workspace/project/library_src)。

您可以尝试制作 both facebook-sdk 和 android-main 子模块,以使它们处于同一级别。像这样的:

/project/
   +--- android-main.git
   +--- android-project/
           +--- android-main/
           +--- facebook-sdk/

因此,为您的 android 项目 (android-main.git) 创建一个裸仓库。此 repo 不需要在您的工作区中。然后为您的代码添加一个子文件夹(android-project)并添加您的子模块。

【讨论】:

  • 谢谢,原来EGit(Eclipse Git 插件)对子模块的支持不太好,所以我得看看其他解决方案。
  • 我不建议使用 EGit - 它非常不成熟并且会出现很多问题,尤其是在大型环境中。
  • 我认为另一个效果很好的解决方案是终端 :)
猜你喜欢
  • 2018-06-29
  • 2017-01-19
  • 2010-10-11
  • 1970-01-01
  • 2016-05-06
  • 2012-01-16
  • 1970-01-01
  • 1970-01-01
  • 2013-11-19
相关资源
最近更新 更多