AOSP源碼同步過程(官方)
第一步:安裝Repo
Repo 是一款工具,可讓您在 Android 環境中更輕鬆地使用 Git。
Repo 分爲兩部分:第一部分是您安裝的啓動器腳本,它可以與第二部分(即包含在源代碼檢出中的完整 Repo 工具)通信。
要安裝 Repo,請執行以下操作:
1. 在根目錄創建一個bin/目錄,並且把它添加到PATH中。
mkdir ~/bin
PATH=~/bin:$PATH
2. 下載Repo啓動器,並設置權限保證它可執行。
curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo
chmod a+x ~/bin/repo
Repo運行時,需要安裝Python環境。目前支持的版本是Python 3.6 及更高版本。
Python 低版本的適配
如果我們的Python版本低於3.6,我們可以將安裝過程的第“2”個步驟,替換爲:
curl https://storage.googleapis.com/git-repo-downloads/repo-1 > ~/bin/repo
chmod a+x ~/bin/repo
支持 Python 2.7 的舊版 Repo 啓動器。該啓動器不會無限期有效。
第二步:初始化Repo
安裝 Repo 啓動器後,就可以設置您的客戶端以訪問 Android 源代碼庫了。
- 創建源碼存放目錄
創建一個空目錄來存放我們將要下載的Android源碼:
mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY
- 使用您的真實姓名和電子郵件地址配置 Git
使用您的真實姓名和電子郵件地址配置 Git。要使用 Gerrit 代碼審覈工具,您需要一個與已註冊的 Google 帳號相關聯的電子郵件地址。確保這是您可以用來接收郵件的有效地址。您在此處提供的姓名將顯示在您提交的代碼的提供方信息中。
git config --global user.name "Your Name"
git config --global user.email "[email protected]"
之前設置過可以省略此步驟。
- 運行 repo init 以獲取最新版本的 Repo 及其最新的問題修復
您必須爲清單指定一個網址,該清單用於指定 Android 源代碼中包含的各個代碼庫將位於工作目錄中的什麼位置。
獲取代碼庫的所有分支及TAG信息:
repo init -u https://android.googlesource.com/platform/manifest
要檢出master之外的其他分支或TAG,可以使用-b參數:
//這裏我們只檢出android-10.0.0_r2分支
repo init -u https://android.googlesource.com/platform/manifest -b android-10.0.0_r2
初始化成功後,系統將顯示一條消息,告訴您 Repo 已在工作目錄中完成初始化。您的客戶端目錄現在應該包含一個 .repo 目錄,這是清單等文件的存放位置。
第三步:下載Android源代碼樹
要將 Android 源代碼樹從默認清單中指定的代碼庫下載到工作目錄,請運行以下命令:
repo sync
或
repo sync -j 4 //4個線程同步下載
要加快同步速度,請使用 -jthreadcount 標記。您也可以考慮添加 -qc,從而確保同步過程安靜且僅在當前分支進行。
同步命令執行後,就開始源碼下載過程了,這個過程非常漫長,網絡還可以的話也需要幾個小時才能完成一個Android版本的下載。
國內鏡像
如果通過google官方同步失敗,可以嘗試使用國內鏡像。
Android官方資料
Android版本詳情地址
https://source.android.com/setup/start/build-numbers#source-code-tags-and-builds
repo相關命令說明
https://source.android.com/setup/create/coding-tasks