Android源碼下載(Mac移動硬盤)

創建區分大小寫的磁盤映像

Mac系統默認磁盤,文件系統運行不區分大小寫。Git 並不支持此類文件系統,而且此類文件系統會導致某些 Git 命令(例如 git status)的行爲出現異常。因此,建議始終在區分大小寫的文件系統中對 AOSP 源文件進行操作。

有兩種方式可以創建磁盤映像,具體操作如下:

由於AOSP比較大,但是我們存放在移動硬盤上,更大的空間能夠更好地滿足未來的需求,所以預留200G+的空間。
可以通過 shell 使用以下命令創建磁盤映像:

hdiutil create -type SPARSE -fs 'Case-sensitive Journaled HFS+' -size 220g /Volumes/zza/aosp/android.dmg

在雙擊這個鏡像,將其掛載。這樣在Mac Finder中就可以看到我們剛剛的創建的鏡像了。

Android源碼下載更新

Android 源代碼樹位於由 Google 託管的 Git 代碼庫中。Git 代碼庫中包含 Android 源代碼的元數據,其中包括與對源代碼進行的更改以及更改日期相關的元數據。下面介紹瞭如何下載特定 Android 代碼流水線的源代碼樹。

安裝 Repo

Repo 是一款工具,可讓您在 Android 環境中更輕鬆地使用 Git。要安裝 Repo,請執行以下操作:

mkdir ~/bin # 創建文件夾
PATH=~/bin:$PATH #設置環境變量
curl https://mirrors.tuna.tsinghua.edu.cn/git/git-repo > ~/bin/repo #下載repro 到/bin/repo文件裏
chmod a+x ~/bin/repo # 給repo 文件權限

更新 Repo

repo的運行過程中會嘗試訪問官方的git源更新自己,如果想使用tuna的鏡像源進行更新,可以將如下內容複製到你的~/.bashrc

export REPO_URL='https://mirrors.tuna.tsinghua.edu.cn/git/git-repo'

source ~/.bashrc

替換國內清華的鏡像

用第三方工具打開repo文件,替換國內清華的鏡像

https://android.googlesource.com/ 全部使用 https://aosp.tuna.tsinghua.edu.cn/ 代替即可。

由於使用 HTTPS 協議更安全,並且更便於靈活處理,所以強烈推薦使用 HTTPS 協議同步 AOSP 鏡像。

由於 AOSP 鏡像造成CPU/內存負載過重,限制了併發數量,因此建議:

  1. sync的時候併發數不宜太高,否則會出現 503 錯誤,即-j後面的數字不能太大,建議選擇4。
  2. 請儘量選擇流量較小時錯峯同步。

使用每月更新的初始化包

由於首次同步需要下載約 30GB 數據,過程中任何網絡故障都可能造成同步失敗,強烈建議使用初始化包進行初始化。

下載 https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar (可以使用三方工具下載),下載完成後記得根據 checksum.txt 的內容校驗一下。

由於所有代碼都是從隱藏的 .repo 目錄中 checkout 出來的,所以我們只保留了 .repo 目錄,下載後解壓 再 repo sync 一遍即可得到完整的目錄。

使用方法如下:

wget -c https://mirrors.tuna.tsinghua.edu.cn/aosp-monthly/aosp-latest.tar # 下載初始化包
tar xf aosp-latest.tar
cd AOSP   # 解壓得到的 AOSP 工程目錄
# 這時 ls 的話什麼也看不到,因爲只有一個隱藏的 .repo 目錄 ,可以使用ls -al
repo sync # 正常同步一遍即可得到完整目錄
# 或 repo sync -l 僅checkout代碼

此後,每次只需運行 repo sync 即可保持同步。

傳統初始化方法

建立工作目錄:

mkdir WORKING_DIRECTORY
cd WORKING_DIRECTORY

初始化倉庫:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest

如果提示無法連接到 gerrit.googlesource.com,請參照“更新 Repo”。

如果需要某個特定的 Android 版本:

repo init -u https://aosp.tuna.tsinghua.edu.cn/platform/manifest -b android-4.0.1_r1

列表:https://source.android.com/setup/start/build-numbers#source-code-tags-and-builds

同步源碼樹(以後只需執行這條命令來同步):

repo sync

參考:

1.https://mirrors.tuna.tsinghua.edu.cn/help/AOSP/

2.https://mirrors.tuna.tsinghua.edu.cn/help/git-repo/

3.https://blog.csdn.net/YuDBL/article/details/86129195

歡迎關注我的公衆號,持續分析優質技術文章
歡迎關注我的公衆號

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章