repo
を使用して Android ソースを取得することの最小限の側面や、何を行うかについての非常に広範な定義に関する短い質問がたくさんありrepo
ますrepo
。Android ソース サイトの指示に従っています。私はこれを常に行っているrepodir
ので、ファイルに関するすべての言及はこれに関連しています。
リポジトリの初期化と同期:
repo init -u https://android.googlesource.com/platform/manifest
repo sync
これが完了すると、私のフォルダーは Android タイプのフォルダー ( bionic
、bootable
など) と隠し.repo
フォルダーでいっぱいになります。特に、ics-mr1
特定のバージョンに関連する という名前のフォルダーがあり、その中にはほとんど同じフォルダーが含まれていますrepodir
。
特定のブランチをプルダウンします。
repo init -u https://android.googlesource.com/platform/manifest -b gingerbread
repo sync
これは比較的迅速に完了し、主な変更点は、というフォルダーがあることですgingerbread
(元のフォルダーはすべて残っているようです)。
私は今これを試してみましたが、AGESがかかります:
repo init -u https://android.googlesource.com/platform/manifest -b android_4.2.2_r1
repo sync
その後、同じgingerbread
およびics-mr1
いくつかの新しいランダムフォルダー(のようなabi
)がまだ含まれていますが、その新しいバージョンのものと思われるものは何もありません。
質問
この結果から、自分の行動が正確に何をしているのか、自分がしようとしていることをどのように達成するのかを本当に理解していないことがわかります.
master
ソースのブランチ全体のローカル バージョンを取得し、必要に応じてブランチ間を正しく変更するにはどうすればよいですか? ブランチの変更後に残されたファイルが非論理的に見えるため、現時点での私のやり方は間違っているようです。
さらに、多数のブランチのローカル コピーを同時に作成して、それぞれのコンポーネントを比較できる効率的な方法はありますか (明らかに、毎回再ダウンロードする必要はありません)。
私はこれらの質問を理解の大きな穴 (明確で一貫した情報を見つけることができなかったもの) で尋ねているので、実際に何が行われているのかを理解するのに役立つ回答に関する追加情報は本当に価値があります.