无法将 android“gen”文件夹提交到 Git

Posted

技术标签:

【中文标题】无法将 android“gen”文件夹提交到 Git【英文标题】:Cannot commit android "gen" folder to Git 【发布时间】:2011-05-21 05:13:35 【问题描述】:

我在 Eclipse 中使用 EGit 为我正在处理的 android 项目提供 Git 支持。问题是,在将我的项目提交到本地存储库后,我意识到“gen”文件夹没有被提交。因此,当我从 Git 存储库获取最新源后尝试在另一台机器上打开项目时,我不断收到以下错误:

错误:无法打开类文件 D:\CodeRep\POCs\Java\Android\Sudoku\gen\org\blah\example\R.java:没有这样的文件或目录

为什么我不能将“gen”文件夹从 Eclipse 提交到 Git?一切都很好地提交了,所以我可以将它推送到远程存储库。

【问题讨论】:

您不应提交gen/ 文件夹。我认为您必须在您的项目中使用clean 或其他一些 Eclipse 功能。 Android 工具 8 将其更改为默认不允许包含 gen 文件 【参考方案1】:

您不应该提交gen 文件夹;它包含生成的代码,不属于源代码管理。如果您使用的是构建脚本,您应该在使用 Eclipse“Project -> Clean”或命令行“ant clean”拉取源代码的机器上重新创建它。

【讨论】:

【参考方案2】:

这是一个生成代码的文件,你通常只是提交到 git 的源代码。

您可能需要在签出项目时对其进行清理,也许您在提交中错误地包含了一些其他目标文件,因此看起来它已经构建好了。

【讨论】:

【参考方案3】:

没有必要将“gen”目录提交给 git,因为其中的所有内容都应该根据源代码中其他地方的内容自动生成。事实上,“gen”目录可能已经被 Android SDK 添加到你的 .gitignore 中了。

【讨论】:

以上是关于无法将 android“gen”文件夹提交到 Git的主要内容,如果未能解决你的问题,请参考以下文章

Android项目Git提交仓库的忽略文件

Android项目Git提交仓库的忽略文件

为啥 Android R.java 文件可以在 src/ 或 gen/ 中?

Gi天&Github(下)

git 学习

Git:将提交合并到不同的分支