2025 年 3 月 27 日より、AOSP のビルドとコントリビューションには aosp-main
ではなく android-latest-release
を使用することをおすすめします。詳細については、AOSP の変更をご覧ください。
ソース管理ツール
コレクションでコンテンツを整理
必要に応じて、コンテンツの保存と分類を行います。
Android のコードを操作するには、Git(オープンソースのバージョン管理システム)と Repo(Google が構築した、Git 上で実行できるリポジトリ管理ツール)の両方を使用する必要があります。レビュー用の変更のアップロードなど、実施可能な通常の操作の概要については、ソース管理ワークフローをご覧ください。
Git
Git は、複数のリポジトリに分散する大規模なプロジェクトを扱います。Android では、ローカルでのブランチ作成、コミット、差分の取得、編集などのローカル操作に Git を使用します。Android プロジェクトを立ち上げる際には、趣味として楽しむ個人が集まったコミュニティからコンシューマー向けデバイスを大量生産する大手 OEM まで、実にさまざまなコミュニティに対して最適なサポートを提供するにはどうすればいいかという課題がありました。置き換えが可能で、Android から離れた環境でも独自に利用できるコンポーネントが必要でした。そこで選んだのが分散リビジョン管理システムで、いくつかの候補の中から Git を採用することにしました。
Git の詳細については、Git のドキュメントをご覧ください。
Repo
Repo は、Git リポジトリの統合(必要な場合)、Gerrit リビジョン管理システムへのアップロード、Android 開発ワークフローの部分的な自動化を行います。
Repo ランチャーには、チェックアウトを初期化し、もう 1 つの要素であるフル Repo ツールをダウンロードする Python スクリプトが用意されています。フル Repo ツールは、Android ソースコードのチェックアウトに含まれています。デフォルトで $SRCDIR/.repo/repo/...
にあり、ダウンロードした Repo ランチャーから転送されるコマンドを受信します。
Repo は Git に代わるものではなく、Android 向けに Git を使いやすくするためのものにすぎません。Repo はマニフェスト ファイルを使用して、Git プロジェクトを Android スーパープロジェクトに集約します。Python 実行スクリプトである repo
コマンドは、パス内のどこにでも配置できます。Android ソースファイルを操作する際、ネットワークをまたがる操作に Repo を使用できます(たとえば、単一の Repo 作業ディレクトリを使用します)。
ほとんどの場合、Repo の代わりに Git を使用できます。あるいは、Repo と Git のコマンドを組み合わせて複雑なコマンドを作成することもできます。ただし、ネットワークをまたがる基本的な操作を行う場合は、Repo を使用した方がはるかに作業が容易になります。Repo の詳細については、Repo コマンド リファレンス、Repo の README、Repo で有効にできるプリアップロード フック(テスト)、AOSP の一般的なドキュメントをご覧ください。
Repo ランチャーを git-repo-downloads からダウンロードしてインストールするには、Repo のインストールをご覧ください。
Gerrit
Gerrit は、Git を使用するプロジェクトを対象としたウェブベースのコード審査システムです。Gerrit を利用することで、すべての認定ユーザーが変更内容を送信できるようになり、Git の使用が一元化されます(変更内容は、コード審査を通過すると自動的にマージされます)。また、Gerrit を利用すると、変更箇所がブラウザ内で並べて表示され、インライン コメントも可能になるため、審査が容易になります。
Android Gerrit 審査インターフェースについては、android-review.googlesource.com をご覧ください。また、コード ナビゲーション インターフェースについては、android.googlesource.com をご覧ください。
Android ソースコード検索
Android ソースコード検索を使用すると、何もダウンロードせずに AOSP 全体を検索できます。ソースコード検索を利用することで、AOSP のソースコードを表示したり、オープンソース ブランチを切り替えたり、相互参照をたどったりすることができます。詳細については、Google Developers サイトにあるソースコード検索のドキュメントをご覧ください。
Android Studio は Android アプリ開発用の公式の統合開発環境(IDE)です。
Android Debug Bridge(ADB)を使用すると、開発用ワークステーションを Android デバイスに直接接続できるため、パッケージをインストールして変更を評価できます。
AOSP 開発には Android Studio for Platform(ASfP)を使用します。
このページのコンテンツやコードサンプルは、コンテンツ ライセンスに記載のライセンスに従います。Java および OpenJDK は Oracle および関連会社の商標または登録商標です。
最終更新日 2025-03-26 UTC。
[[["わかりやすい","easyToUnderstand","thumb-up"],["問題の解決に役立った","solvedMyProblem","thumb-up"],["その他","otherUp","thumb-up"]],[["必要な情報がない","missingTheInformationINeed","thumb-down"],["複雑すぎる / 手順が多すぎる","tooComplicatedTooManySteps","thumb-down"],["最新ではない","outOfDate","thumb-down"],["翻訳に関する問題","translationIssue","thumb-down"],["サンプル / コードに問題がある","samplesCodeIssue","thumb-down"],["その他","otherDown","thumb-down"]],["最終更新日 2025-03-26 UTC。"],[],[],null,["# Source control tools\n\nWorking with Android code requires using both **Git** (an open-source\nversion-control system) and **Repo** (a Google-built\nrepository-management tool that runs on top of Git). See\n[Source control workflow](/docs/setup/create/coding-tasks) for a summary of\nregular actions you can take, such as uploading changes for review.\n\nGit\n---\n\nGit handles large projects that are distributed over multiple repositories.\nAndroid uses Git for local operations such as local branching, commits,\ndiffs, and edits. One of the challenges in setting up the Android project\nwas determining how to best support the outside community---from the hobbyist\ncommunity to the large OEMs building mass-market consumer devices. We\nwanted components to be replaceable, and wanted interesting components to\nhave a life of their own, outside of Android. We first chose a distributed\nrevision control system, then narrowed it down to Git.\n\nFor more details on Git, refer to this [Git Documentation](https://git-scm.com/doc).\n\nRepo\n----\n\n[Repo](https://gerrit.googlesource.com/git-repo/+/refs/heads/main/README.md)\nunifies Git repositories when necessary, performs uploads to the [Gerrit\nrevision control system](https://android-review.googlesource.com/), and\nautomates parts of the Android development workflow.\n\nThe Repo Launcher provides a Python script that initializes a checkout and\ndownloads the second part, the full Repo tool. The full Repo tool is\nincluded in an Android source code checkout. It's located, by default, in\n`$SRCDIR/.repo/repo/...` and it receives forwarded commands from the\ndownloaded Repo Launcher.\n\nRepo doesn't replace Git, it only makes it easier to work with Git in the\ncontext of Android. Repo uses [manifest files](https://gerrit.googlesource.com/git-repo/+/main/docs/manifest-format.md)\nto aggregate Git projects into the Android superproject. You can put the\n`repo` command, which is an executable Python script, anywhere in your\npath. In working with the Android source files, you can use Repo for\nacross-network operations such as with a single Repo working directory.\n\nIn most situations, you can use Git instead of Repo, or mix Repo and Git\ncommands to form complex commands. However, using Repo for basic\nacross-network operations makes your work much simpler. For more details\non Repo, see [Repo command reference](/docs/setup/reference/repo),\n[Repo README](https://gerrit.googlesource.com/git-repo/+/refs/heads/main/README.md),\n[Preupload Hooks](https://android.googlesource.com/platform/tools/repohooks/+/refs/heads/android16-release/README.md)\n(tests that can be enabled in Repo), and [general docs in AOSP](https://gerrit.googlesource.com/git-repo/+/main/docs/).\n\nTo download and install the **Repo Launcher** from *git-repo- downloads* ,\nsee [Install Repo](/docs/setup/start/requirements#repo).\n\nGerrit\n------\n\n[Gerrit](https://gerrit-review.googlesource.com/Documentation/) is a\nweb-based code review system for projects that use Git. Gerrit encourages a\nmore centralized use of Git by allowing all authorized users to submit\nchanges, which are automatically merged if they pass code review. In\naddition, Gerrit simplifies reviewing, displaying changes side by side in\nthe browser and enabling inline comments.\n\nFind the Android Gerrit review interface at\n[android-review.googlesource.com](https://android-review.googlesource.com/)\nand the code navigation interface at\n[android.googlesource.com](https://android.googlesource.com/).\n\nAndroid Code Search\n-------------------\n\n[Android Code Search](https://cs.android.com) lets you search AOSP without\ndownloading anything. You can use Code Search to view the AOSP source code,\nswitch between open source branches, and navigate cross-references. For more\ninformation, see the Google Developers site for the [Code search\ndocumentation](https://developers.google.com/code-search).\n\nOther tools\n-----------\n\n[Android Studio](https://developer.android.com/studio/intro) is the official\nintegrated development environment (IDE) for Android app development.\n\n[Android Debug Bridge (adb)](/docs/setup/build/adb) lets you connect your\ndevelopment workstation directly to your Android-powered device so you can\ninstall packages and evaluate your changes.\n\nFor AOSP development, use [Android Studio for Platform\n(ASfP)](https://developer.android.com/studio/platform)."]]