web-dev-qa-db-ja.com

Mercurial .hgignore for Android Studioプロジェクト

開発にAndroid Studio(1.0 RC4 Windows)を使用する場合、Mercurialではどのファイルを無視する必要がありますか?

新しいアプリケーションプロジェクトを作成すると、.gitignoreファイルも作成されます。私はそれを次の.hgignoreファイルに翻訳しました

syntax: glob
.hgignore
.gradle
local.properties
.idea/workspace.xml
.idea/libraries
.DS_Store
build

しかし、プロジェクトに対してAdd to VCSを実行すると、無視リストにない一部のファイルがMercurialに追加されません。省略されたファイルは次のとおりです。

.idea\.name
.idea\compiler.xml
.idea\copyright\profiles_settings.xml
.idea\encodings.xml
.idea\gradle.xml
.idea\misc.xml
.idea\modules.xml
.idea\scopes\scope_settings.xml
.idea\vcs.xml
build.gradle
MyApplication.iml
gradle.properties
gradle\wrapper\gradle-wrapper.jar
gradle\wrapper\gradle-wrapper.properties
gradlew
gradlew.bat
settings.gradle

リストを無視するためにそれらのファイルを追加する必要がありますか、それともVCSに追加する必要がありますか?

また、.imlファイルで何をすべきかについても不明です。 ASを使用してMercurialにプロジェクトを追加すると、app\app.imlファイルが追加されますが、ASを使用してGitにプロジェクトを追加すると、そのファイルは追跡されません。

VCSで余分なファイルを追跡したくありませんが、重要なファイルの保存を見逃したくありません。ファイルを追跡する必要のあるソースは多数ありますが、情報が大きく異なるため、明確な結論を出すことは困難です。

更新:私の.hgignoreファイルの最終バージョン

syntax: glob
.hgignore
.gradle
local.properties
.idea
.DS_Store
build
*.iml
gradlew
gradlew.bat

開発者間でプロジェクトを共有するには、次のファイルをVCSにコミットする必要があります。そうしないと、ASは別のマシンにプロジェクトをインポートできなくなります。

gradle.properties
gradle\wrapper\gradle-wrapper.jar
gradle\wrapper\gradle-wrapper.properties
18

.hgignorebuild.gradleを除いて、上記のすべてのファイルをsettings.gradleに追加することをお勧めします。 .ideaディレクトリ内のファイルはAndroid Studioによって自動的に生成されるため、追跡したり、手動で編集したりしないでください。 gradlewまたはgradlew.batを編集する必要はないと思いますので、それらも取り入れることができます。後でデフォルトバージョンを変更する必要があるときに、gradle.propertiesgradle-wrapper.propertiesを追加できます(個人的には、これら2つも無視します)。

2
aga

これは、gradleベースのAndroid St​​udio(1.5)プロジェクトで私が最終的に得たものです。

syntax: glob
*.iml
.gradle
.idea/dictionaries
.idea/libraries
.idea/tasks.xml
.idea/workspace.xml
build
gen
local.properties

これは非常に完全なリストだと思います。唯一の疑わしいオプションimhoは、*.imlファイルを無視するかどうかです。 build.gradleからの情報を複製し、Android St​​udioによって自動的に生成され、常に更新されますが、一方で、新しい開発者は「既存のAndroidStudioプロジェクト」を追跡しないことにした場合。

他の答えとは反対に、すべてのgradleラッパーファイルをVCSにチェックインすることを強くお勧めします。ラッパーの目的は、gradleのインストールをブートストラップすることです。たとえば、自動ビルドを設定する場合は、プロジェクトをチェックアウトし、local.propertiesまたは対応する環境変数を作成して、gradlew assembleを実行するだけです。ビルドシステムは、gradle-wrapper.propertiesで指定されたgradleバージョンを自動的にインストールして、assembleタスクを実行します。これは共有する価値のある情報です。

この公式のJetBrainsサポート記事も確認してください: https://intellij-support.jetbrains.com/hc/en-us/articles/206827587-How-to-manage-projects-under-Version-Control-Systems

7
Nappy

。ignore プラグインを使用すると、2回クリックするだけで.hgignoreを生成できます。ルートフォルダのコンテキストメニューを開き、[新規] >>。ignoreファイル>>。hgignoreを選択します。次に、Android Studioプロジェクトの場合、以下にリストされているチェックボックス(テンプレート)にチェックマークを付けるだけです。

  • Android
  • Gradle(オプション)
  • ジェットブレインズ
  • AppEngine(オプション)

生成されたファイルの先頭にsyntax: globを追加します。

3
naXa

IntelliJ IDEA通常のgradle/maven用のMercurial.hgignoreファイルJavaラッパーを含むマルチプロジェクト(ラッパーもコミットする必要があります)

syntax: regexp
.gradle/*
.idea/*
syntax: glob
.git/*
*/out/*
*/build/*
*/target/*
.DS_Store
*.iml
*.ipr
*.iws
*.log
0