AndroidStudioでSubversionを使ってプロジェクトを共有

提供: tknotebook
2015年10月26日 (月) 02:45時点におけるNakamuri (トーク | 投稿記録)による版

(差分) ←前の版 | 最新版 (差分) | 次の版→ (差分)
移動: 案内検索

メインページ>コンピュータの部屋#Android>AndroidStudio Tips

AndroidStudioを使ってプロジェクトを Subversion に登録する方法には

  1. プロジェクトを Subversion へインポートする。
  2. プロジェクトを Subversion で共有(Share)する。

の2種類がありますが、ここでは「プロジェクトを Subversion で共有(Share)する」やりかたを説明します。


「プロジェクトを Subversion で共有(Share)する」 というのは以下のような処理です。

  1. プロジェクトの登録先(Subversionのリモートフォルダ)を決める。
  2. プロジェクトの形式を作業コピーに変更する(.svnフォルダを作る)

つまり、VCSに登録が必要なファイルやフォルダが未コミット状態の作業コピーを作るのが「プロジェクトを Subversion で共有(Share)する」 です。 実際にプロジェクトが登録されるのは、プロジェクトを最初にコミットするときです。

このやり方は、プロジェクトをSubVersionへインポートして、ローカルプロジェクトを消し、プロジェクトをチェックアウトする手順に比べシンプルで簡単です。 しかも VCSの除外設定が効くので効率的にプロジェクトを登録できます。プロジェクトの登録にはこちらを利用することをお勧めします。

プロジェクトのVCSに登録しないファイル、フォルダを指定する

「プロジェクトを Subversion で共有(Share)する」 を使う場合、プロジェクトのVCSに登録しないファイル、フォルダを事前にしっかり指定することは重要です。 なぜなら、プロジェクトは新規で800近くのファイルから構成されますが、大部分(9割)は モジュールのbuild フォルダにあり、VCSに登録する必要がないからです。

余分なファイルを登録してしまうと

  1. 「プロジェクトを Subversion で共有(Share)する」でローカルプロジェクトを作業ホルダーに変換するとき、ローカルプロジェクトのファイルすべてをローカルでVCSに追加する(Add)のに時間がかかる。
  2. Subversionサーバの容量が無駄になる。
  3. 最初のプロジェクトのコミットにかなり大きな時間がかかる。
  4. その後のコミットもかなり遅い。

などいいことありません。必ず「プロジェクトを Subversion で共有(Share)する」 を行う前に、最低限 モジュール名/build は除外してください。 複数のモジュールを使用しているときは、モジュールのbuildフォルダをすべて除外して下さい。

[File]→[Settings]→[Version Control]→Ignore Files] に以下のパターンを登録するのがよいでしょう。 最初の2つはあらかじめ登録されているので、付け加えてください。

尚、この指定は Subversionの無視リストとは独立です。ご注意を!


AndroidStudioIgnoreFiles.png

尚この設定はプロジェクトがSubversionの作業コピー形式でない場合はプロジェクトを閉じると消えてしまいます。 設定が済んだら速やかにプロジェクトを Subversion に登録してください。

プロジェクトの共有の開始

以下のメニュー項目でプロジェクトの共有を開始します。

ProjectShare開始.png

共有ターゲットの選択

SubVersion上のプロジェクトのリモートパスを選択します。

共有ターゲットの選択.png

このダイアログの上段ではプロジェクトのリモートパスを指定しますが、必要に応じてリモートフォルダをSubversion上のリポジトリ上に作成できます。 このダイアログの中段ではプロジェクトのリモートフォルダをより細かく指定します。以下の三つが選べます。

  1. 上段で指定したフォルダをプロジェクトのフォルダにする。
  2. 上段で指定したフォルダの下にプロジェクト名のフォルダを作成する。
  3. 上段で指定したフォルダの下にロジェクト名のフォルダを作成、その下に trunk フォルダを作成する。

このダイアログの下段にはプロジェクトフォルダコミット時のメッセージを入力します。

Subversionの作業コピー形式の選択

ローカルのプロジェクトを作業コピーに変換するため、Subversionのバージョンを選択します。 Subversionのバージョンにより作業コピーの形式が違うからです。Subversionのサーバのバージョンと同じものを選択してください。

Subversionバージョン選択.png

バージョンを選択すると10秒ほどでローカルプロジェクトが作業コピーに変換されます。 このとき、どのファイルやフォルダがバージョン管理されるかが決定されるので、 除外ファイルを指定をし忘れると長い時間かかります。注意してください。

プロジェクトをSubversionへ送る

ローカルプロジェクトが作業コピーに変換された時点では、Subversionにはプロジェクトフォルダしか登録されていません。 [VCS]→[Commit Changes..]のダイアログでコミットを行うと、必要なファイルだけ、プロジェクトに登録され、誰でも編集できるようになります。

除外フォルダや除外ファイルの確認方法

一番簡単なのはプロジェクトツールウインドウで少し色の薄いフォルダやファイルを見つけることです。 少々わかりにくい色なのでもう少し目立つ色に変えておくことをおすすめします。私は明るい緑にしています。

[File]→[Settings]→[Editor]→[Colors & Fonts]→[File Status] で ignored の色を変えて下さい。

AndroidStudio を再起動するか、プロジェクトを閉じてプロジェクトを再オープンすると、色が反映されます。

尚、プロジェクトがSubversionに登録された後は VCSの除外設定が消えてしまっても問題ありません(実際たびたび原因不明で消えてしまいます)。 基本的に AndroidStudio は Subversionに未登録のフォルダを追加することはめったにありませんし、追加するときは利用者にダイアログで問い合わせてきます。 慌てずに応対すれば、不必要なフォルダを追加したり、必要なファイルを登録しそこなったりすることはないでしょう。