Android Repo

關(guān)于Android源碼下載的問題,糾結(jié)了很久,遇到很多問題,現(xiàn)在終于解決了,小結(jié)一下。

1、Repo是什么?

? ? “repo只是google用Python腳本寫的調(diào)用git的一個(gè)腳本,主要是用來下載、管理Android項(xiàng)目的軟件倉庫。(也就是說,他是用來管理給git管理的一個(gè)個(gè)倉庫的)”引用來源

2、Repo獲取

curl https://storage.googleapis.com/git-repo-downloads/repo > ~/bin/repo

3、Repo初始化倉庫

? ? 國內(nèi)采用清華鏡像

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

4、同步代碼

repo sync


下面說說遇到的問題

1、同步某個(gè)Project失敗,手動(dòng)同步了一下,查看輸出日志

$ repo sync frameworks/compile/slang

Fetching project platform/frameworks/compile/slang

Fetching projects: 100% (1/1), done.

error: unable to create file tests/P_str_escape/str\\escape.rs (No such file or? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? directory)

? 奇葩的路徑找不到,手動(dòng)創(chuàng)建了該文件路徑,同步就成功了。

$ repo sync frameworks/compile/slang

Fetching project platform/frameworks/compile/slang

Fetching projects: 100% (1/1), done.

2、經(jīng)常遇到同步失敗,網(wǎng)絡(luò)錯(cuò)誤,需要采用自動(dòng)重試腳本

#!/bin/bash

echo ¨================start repo sync===============¨

repo sync -f -j4

while [ $? == 1 ]; do

echo ¨================sync failed, re-sync again=============¨

sleep 3

repo sync -f -j4

done

? ? 這個(gè)腳本要命的是停止都停不下來,除非殺掉或成功。注意清華鏡像要求不要使用-j參數(shù),線程數(shù)目不能超過4(默認(rèn)是4)


參考文章:

1、http://blog.csdn.net/sunchaoenter/article/details/46342759

2、http://mirrors.tuna.tsinghua.edu.cn/help/#AOSP

3、http://blog.csdn.net/luoshengyang/article/details/18195205

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容