repo: repoでリポジトリを管理するための設定方法

Androidのプロジェクトって、アプリのプロジェクトとテストプロジェクトの2つの管理をしなきゃいけないじゃないですか。それって面倒ですよね。だからgitで2つのプロジェクトを含んだリポジトリを作って管理すりゃいいのかなと思って、そういうふうにして、BitBucketにリポジトリ作り終えたところで、一服していたら、眼鏡が大好きな人にこう言われたのです。

repoってあれですか?Androidのソースをダウンロードするときに使うやつでしょ?というくらいしか知識のない僕に対して、眼鏡大好きな人は優しく教えてくれました。

なるほど。便利そうだから、使ってみる事にしようと決意しました。

ありやまさんが教えてくれていますが、簡単にいうと、複数のリポジトリをrepoコマンドを使う事で一気に操る事が出来るという事ですね。Androidのプロジェクトのように複数のプロジェクトが絡んだり(プログラム、テスト、ライブラリのプロジェクトとか)する場合に、一気にpushしたり、一気にpullしたりするのに便利そうですね。ふむふむ。

参考にしたサイトは以下の通り。
Repo と Git の使い方 (Using Repo and Git)

  1. まずBitBucketにリポジトリを作る。AndroidアプリのプロジェクトのリポジトリとAndroidアプリのテスト用のプロジェクトのリポジトリの2つとかが多分普通ですね。作り方はBitBucketのサイトで勉強してください。ここでは、AndroidSampleプロジェクトとします。
  2. プロジェクトを作ってgitでコミットしてBitBucketのリポジトリにpushしといてください。
  3. Eclipseでrepo用のプロジェクトを作ります。これは別になんでもない、ただのプロジェクトを作ります。RepoHogeHogeというプロジェクトにしたとします。
  4. RepoHogeHogeプロジェクトにdefault.xmlというXMLファイルを作ります。XMLファイルに以下の記述をします。remoteタグのfetchのssh://git@bitbucket.orgは、githubを使ってるんなら、それ用に置き換えて。patorashは自分のBitBucketのユーザ名とかに置き換えて。
    <?xml version="1.0" encoding="UTF-8"?>
    <manifest>
        <remote name="origin" fetch="ssh://git@bitbucket.org/" />
        <default revision="master" remote="origin" />
        <project path="AndroidSample"
            name="patorash/androidsample.git" remote="origin" />
        <project path="AndroidSampleTest"
            name="patorash/androidsampletest.git" remote="origin" />
    </manifest>
    
  5. RepoHogeHogeプロジェクト用のリポジトリをBitBucketに作ってpushします。
  6. 準備は完了。
  7. ターミナルで、チェックアウトするディレクトリで以下を実行。ちゃんとユーザ名はリポジトリ名を置き換えること。
    repo init -u git@bitbucket.org:patorash/repohogehoge.git
  8. ターミナルで、以下を実行。
    repo sync
  9. これで、AndroidSampleプロジェクトとAndroidSampleTestプロジェクトがチェックアウトされます。
  10. ただ、RepoHogeHogeをBitBucketにpushして直ぐにrepo syncを実行したらうまくいかないときがありました。
    それで凄い悩みました。BitBucketの調子が悪いときも結構あるのかもしれません。失敗する場合は、.repoディレクトリを削除して、再度repo initのやつをやってみてください。何度かやっていたら成功しました。

以上です。実際に使うのはこれからなので、またわかったら書いていきたいと思います。


タグ Android, システム開発 | パーマリンク.

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です