用于Eclipse和Android开发的Mercurial ignore-file

时间:2010-09-09 13:57:47

标签: android eclipse mercurial hgignore

我见过Mercurial的样本忽略了Visual Studio等文件。

我刚开始玩Android开发,我也利用这段时间来试验Mercurial。 所以我的问题是:有没有人有一个用于Eclipse和Android开发的.hgignore文件的好例子?

首先,我自己有以下内容:

# use glob syntax
syntax: glob

# Ignore patterns
.metadata\
bin\
gen\

是否还应包含其他任何忽略模式?例如,Eclipse文件.classpath.project是否应该从版本控制中省略?

- 编辑如下 -

我还没有得到我希望的答案,所以我会拿出一笔赏金,并试着指出一点我想要的东西。

在我自己尝试了一下后,我似乎发现上面列出的建议.hgignore似乎已经足够了。我做过的唯一补充就是.settings一行(这是我运行 Android工具后出现的文件夹 - >修复项目属性)。我还发现(如Ry4an所述)Eclipse文件.classpath.project应该被排除。

然而,当我得到比基本教程更大的项目时,我不确定这个小的忽略文件是否足够(如果它实际上 一切都好,请解释原因,你会得到信用)。总结一下我在寻找的东西:

  • 我想要一个针对Eclipse项目下的Android项目的.hgignore文件的具体示例
  • 忽略文件应该是这样的,每当我在新位置检出存储库的副本时,它应该立即工作(即不必弄乱路径和引用,添加丢失的文件等。)
  • 还请解释为什么你的包含文件看起来如此(我想了解为什么某些文件/目录被排除在外(为什么有些文件/目录应该包括在内))。
  • 如果您包含特定于操作系统的排除项,请同时说明(我正在运行Windows 7顺便提一下。)

5 个答案:

答案 0 :(得分:13)

绝对应该添加eclipse文件。一般准则是添加:

  • 手写/打字的所有内容
  • 构建项目所需的所有其他内容的最小子集

最后一个是您的判断所在。它明确排除了您自己构建的.jar文件和最终的.apk,但它是否包括您使用的第三方.jar?有些人确实包含它们,但更好的是包含一个依赖管理器的配置文件,如'ivy',它允许下一个构建器自动下载所需的需求。

在我选择的工具中自动创建项目后,我将执行如下命令:

hg status --unknown --no-status >> .hgignore

将所有未知文件的列表添加到.hgignore。然后我进入并删除我想要保存的东西(例如:.project)和将增长兄弟姐妹的通配符文件(例如:**。class)

答案 1 :(得分:8)

有一个非常好的样本.hgignore for Android http://androidfragments.blogspot.com/2011/11/hgignore-for-android.html

答案 2 :(得分:5)

这是我的hgignore:

syntax: regexp
\.DS_Store
.swo
.swp
.metadata/
/bin/

这是一个好的还是一个单独的问题

答案 3 :(得分:1)

好吧,如果它的android项目比

local.properties也应该被忽略

答案 4 :(得分:1)

我找到了一个很好的例子.hgignore。它对我有用。

#Mercurial Ignore Rules for Android
#Save as .hgignore in the repository base directory and add it to source control.
syntax: glob
*.class
*.apk
*.dex
*.ap_
*.suo

syntax: regexp
^(.*[\\/])?gen[\\/].*
^(.*[\\/])?bin[\\/].*
^(.*[\\/])?obj[\\/].*
^(.*[\\/])?log[\\/].*
^(.*[\\/])?obf[\\/].*
^(.*[\\/])?jars[\\/].*
^(.*[\\/])?jar-sources[\\/].*
^(.*[\\/])?javadoc[\\/].*
^(.*[\\/])?\.svn[\\/].*
^(.*[\\/])?\.metadata[\\/].*
^(.*[\\/])?\.settings[\\/].*

来源:http://androidfragments.blogspot.ru/2011/11/hgignore-for-android.html