web-dev-qa-db-ja.com

SVNは、Android Studioのファイルを無視します

プロジェクトのビルドフォルダーを無視しようとしています。svn:ignoreプロパティを再帰的に追加し、Settings > Version Control > Ignore Filesに追加しました。選択できないSubversionの右クリックメニューから[無視]オプションはグレー表示されています。プロジェクトのコミットディレクトリを選択すると、すべてを実行した後、ビルドフォルダーが表示されます。フォルダーを無視する正しい方法は何ですか?

30
TMH

Android Studioも初めてです。プラグインもコマンドラインも使用しないようにこの方法を試しました。Android Studioインターフェイス(バージョン1.5.1 )。

  • 最初のステップは、Kenneth Evansの良い答えが示すように、File> Settings> Version Control> Ignored Filesで無視する必要があるすべてのリソースを宣言することです。これらのリソースは次のとおりです。
    マスク:* .iws(このパターンを追加するには、[一致するすべてのファイルを無視する]オプションを選択します)
    ディレクトリ:.gradle
    ディレクトリ:.idea/libraries /
    ファイル:.idea/workspace.xml
    ディレクトリ:ビルド/
    ファイル:local.properties
    Directory:app/build /(これは、プロジェクトにあるすべてのモジュール用でなければなりません)
    マスク:* .iml
    ファイル:.DS_Store
  • 次のステップは、これらのリソース(ファイルとフォルダー)をリポジトリーの初期状態に戻すことです

複数のモジュールを備えたプロジェクトがあり、各モジュールにはビルドフォルダーがあります。これがあなたの場合、時間の浪費を避け、1つのモジュールを試すことができます。このプロセスが成功したかどうかをテストし、それらすべてに適用します。
まず、svnリポジトリにアタッチされているため、ビルドフォルダーが緑色で表示されます。それを右クリックし、Subversion-Revertを選択します。このフォルダー内のすべてのファイルは、次回プロジェクトをビルドするときに再構築されるため、このプロセスは無関係です。敢えて、元に戻すために無視する必要があるすべてのフォルダーをマークできます。復帰が完了すると、フォルダ名は茶色で表示されます

  • プロジェクトのコミットを行います-これにより、コミットが行われるときにどのリソースを考慮する必要があるかが更新されます。以前にコミットプロセスに含まれているとマークされていたすべてのファイルがマーク解除されるため、しばらく時間がかかります。この長いプロセスが終了すると、除外されたすべてのリソースが表示されないダイアログ、または代わりに「変更なし」のメッセージが表示されます

Local.propetiesファイルを右クリックして、Subversion> local.propertiesを無視を選択できるようになりました
プロジェクトをコンパイルして、コミットを試行します。任意のソースで変更を加えて、プロジェクトを強制的にコンパイルおよびビルドします。
最後にプロジェクトからディレクトリをコミットします(プロジェクトを右クリックして、[Subversion-ディレクトリのコミット...]を選択します)。この最終ステップでは、これらの除外されたリソースがコミット受け入れダイアログに表示されないため、テストが可能になりました。

21
Castanini

VCSにファイルまたはフォルダーを追加すると、それらはデフォルトのチェンジリストに追加されます。無視するファイルとフォルダーを別のチェンジリストに移動します(おそらく無視と呼ばれます)。最後に、デフォルトのチェンジリストのみをコミットし、無視されたチェンジリストを無視します。

16
Tosin Ogunrinde

同じ問題がありました。プロジェクトでディレクトリを共有するまで、リポジトリには何もありませんでした。次に、リポジトリにプロジェクトのフォルダーを作成しました。 「設定」|「バージョン管理」|「Subversion」に次のように入力しました。

  • ファイル:.idea/workspace.xml
  • ファイル:.gradle
  • ディレクトリ:build /
  • マスク:* .iws
  • ディレクトリ:.idea/libraries /
  • ディレクトリ:app/build /
  • ファイル:local.properties

また、変更ビューまたはコミット時に何も無視しませんでした。 Subversion | Ignoreアイテムは上記のように機能していませんでした。

https://plugins.jetbrains.com/plugin/6529?pr=idea でSVN Disconnectプラグインをインストールして実行することで、多少の作業を行うことができました。これは物事をきれいにし、私はやり直しました。今回は、Directory:アイテムは無視しましたが、File:アイテムは無視しませんでした。このグリッチとは別に、動作しているようです。 Subversion | IgnoreまたはSubversion | Remove from ignoreリストのメニュー項目は、期待どおりに動作しているように見えます(ただし、無視は行われません)。

Tortoise SVNをインストールしましたが、Eclipseプロジェクトの場合のように、WindowsエクスプローラーでSVNにあるとマークされていません。ただし、リポジトリブラウザにはファイルが表示されます。

私はAndroid Studioです。Subversionの実装はバグがあるようで、1.7のみです。Android StudioまたはIntelliJ。 「今のところそのまま試してみます。さらに問題がある場合は、もう一度クリーンアップし、外部からTortoise SVNをやり直しますAndroid Studio。

これは完全な答えではありませんが、おそらく役立つでしょう。

13
Kenneth Evans

私のために働いたクリエイティブなソリューション: 'git svn'を使用してgitをローカルで使用し、Push to svn

悲しいことに、以前のチェンジセットにはgitが通過できなかったsvn破損があったため、これを行うのに必要以上に時間がかかりました。いったんgit landに入ると、無視するものすべてが予想どおりに機能し始めました。おそらくsvnプラグインのバグです。

1
Erik B

コンソールを使用して、ライブラリフォルダーを無視することができました。

  • プロジェクトの.ideaにcd
  • svn propset svn:ignore libraries .

さらに、ライブラリフォルダー内のすべてのファイルを元に戻し、Android Studioを閉じてプロジェクトを再度開くことにより、ファイルを "追加解除"する必要がありました。

バージョン管理ビューでファイルが無視されるようになりました。

0
Ragnar

Android Studioインターフェースで、無視したいファイルのプロパティsvn:ignoreに値trueを設定しようとしました。何らかの理由で、それは私にとってはうまくいきませんでした。私の回避策は、これらのファイルを新しいチェンジリストに移動することでした。ファイルを変更すると、そのファイルは「デフォルト」チェンジリストに追加されます。したがって、コミットウィンドウを開くたびに「デフォルト」チェンジリストが表示されます必要なファイルのみが含まれます)。

0
arun8

個人的にはTortoiseSVNを使用して、無視リストやその他のより高度なものを管理しています。

私にとってはより信頼性の高い方法ですが、もちろん、VCSをAndroid Studioで使用しています。なぜなら、変更の着信に関する情報など、多くのクールな機能があるからです。

0
asylume