Android Sync 同步 原始碼問題解決方案
一直很忙,忙的不可開交,以前我說有時間就來寫點東西,然後最近一直很忙,連論文,加新專案,事情挺多的,android原始碼還是很久以前下載的,今天sync發現突然不行了,報錯:
error.GitError: device/common rev-list ('^7d4526582f88808a3194e1a3b304abb369d2745c', 'HEAD', '--'): fatal: bad object 7d4526582f88808a3194e1a3b304abb369d2745c
result = cmd.Execute(copts, cargs)
File "/home/thinkinbunny/mydroid/.repo/repo/subcmds/sync.py", line 466, in Execute
project.Sync_LocalHalf(syncbuf)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1007, in Sync_LocalHalf
lost = self._revlist(not_rev(revid), HEAD)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1785, in _revlist
return self.work_git.rev_list(*a, **kw)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1930, in rev_list
p.stderr))
error.GitError: platform/development rev-list ('^34ccdaa87b25c2456a76aafcf09a66b2fab236ff', 'HEAD', '--'): fatal: bad object 34ccdaa87b25c2456a76aafcf09a66b2fab236ff
[email protected]:~/mydroid$ ./repo sync
Fetching projects: 100% (247/247), done.
Syncing work tree: 4% (10/247) Traceback (most recent call last):
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 385, in <module>
_Main(sys.argv[1:])
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 365, in _Main
result = repo._Run(argv) or 0
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 137, in _Run
result = cmd.Execute(copts, cargs)
File "/home/thinkinbunny/mydroid/.repo/repo/subcmds/sync.py", line 466, in Execute
project.Sync_LocalHalf(syncbuf)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1007, in Sync_LocalHalf
lost = self._revlist(not_rev(revid), HEAD)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1785, in _revlist
return self.work_git.rev_list(*a, **kw)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1930, in rev_list
p.stderr))
error.GitError: device/common rev-list ('^7d4526582f88808a3194e1a3b304abb369d2745c', 'HEAD', '--'): fatal: bad object 7d4526582f88808a3194e1a3b304abb369d2745c
[email protected]:~/mydroid$ ./repo sync
Fetching projects: 100% (247/247), done.
Syncing work tree: 10% (25/247) Traceback (most recent call last):
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 385, in <module>
_Main(sys.argv[1:])
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 365, in _Main
result = repo._Run(argv) or 0
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 137, in _Run
result = cmd.Execute(copts, cargs)
File "/home/thinkinbunny/mydroid/.repo/repo/subcmds/sync.py", line 466, in Execute
project.Sync_LocalHalf(syncbuf)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1007, in Sync_LocalHalf
lost = self._revlist(not_rev(revid), HEAD)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1785, in _revlist
return self.work_git.rev_list(*a, **kw)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1930, in rev_list
p.stderr))
error.GitError: platform/docs/source.android.com rev-list ('^bce007aa754159a3c4b3894c581c53940ebc2e08', 'HEAD', '--'): fatal: bad object bce007aa754159a3c4b3894c581c53940ebc2e08
[email protected]:~/mydroid$ ./repo sync
Fetching projects: 100% (247/247), done.
Traceback (most recent call last):
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 385, in <module>
_Main(sys.argv[1:])
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 365, in _Main
result = repo._Run(argv) or 0
File "/home/thinkinbunny/mydroid/.repo/repo/main.py", line 137, in _Run
result = cmd.Execute(copts, cargs)
File "/home/thinkinbunny/mydroid/.repo/repo/subcmds/sync.py", line 466, in Execute
project.Sync_LocalHalf(syncbuf)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1007, in Sync_LocalHalf
lost = self._revlist(not_rev(revid), HEAD)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1785, in _revlist
return self.work_git.rev_list(*a, **kw)
File "/home/thinkinbunny/mydroid/.repo/repo/project.py", line 1930, in rev_list
p.stderr))
error.GitError: platform/external/bluetooth/bluez rev-list ('^5477d33e187d66961453399c53093bd18297013e', 'HEAD', '--'): fatal: bad object 5477d33e187d66961453399c53093bd18297013e
多次嘗試無果,google之,發現google group上有這個問題,很多人問,不過都是不了了之,以前吧,百度過這個問題,在這個神奇的過度,人人都學會了CC和CV,然後就是,說是刪除.repo目錄,總之有點扯淡,刪除了repo跟重新下載有什麼區別呢?扯淡啊。可惡的bug。
新建了目錄重新下載,最近狗日的寬頻通吃屎,速度老慢。我可不想在假期下載一天原始碼。
折騰了一個上午,發現瞭解決方案。其實很簡單,android原始碼實際上還是用git下載的。至於repo是什麼東東,自己查唄,不浪費資源了。
其本來有圖,無奈windows發不了圖。
我就說說基本解決方法:
除了repo .repo其餘的都刪除,cts之類的什麼刪除就行了,不需要心疼,前提是你的網路通,至於出現bad object,原因不曉得,感覺是東西太老的,無法替換掉,刪除了這些,sync會重新衝repo目錄拷貝解析出來。如果刪除了repo,後果就是你要重新下載 了。應該很長時間的。至於repo下面的東西沒什麼影響,但是不要刪除了,不然更新就蛋疼了
最近遇到了一個大麻煩,發現以上的辦法不管用了,最近換了房子,沒網,要答辯了,把本子帶公司,打算收拾下,順便更新程式碼出錯了,不記錄了,沒法重現了。
提供一個終極方案:
比如原來捏到原始碼目錄是mydroid,現在新建一個droid
$ curl https://dl-ssl.google.com/dl/googlesource/git-repo/repo > ~/bin/repo
$ chmod a+x ~/bin/repo
repo init -u https://android.googlesource.com/platform/manifest
稍等,這個目錄下面會有一個隱藏目錄 repo,把這個目錄全部複製mydroid覆蓋就行,然後droid就沒用了,然後再更新,這樣是最省事的,網速牛逼的非要把repo刪除也沒辦法,對於ip的併發google做了限制的。不能下載的
repo init -u https://android.googlesource.com/a/platform/manifest
只能這樣下載了http://source.android.com/source/downloading.html 仔細閱讀這個就好了。至於repo的各種問題可以說是bug吧。
同步出錯就是某些檔案校驗失敗,最簡單的方法就是新建一個目錄初始化檔案覆蓋舊的,語文不及格,表的的不是很明白,將就看吧
相關推薦
Android Sync 同步 原始碼問題解決方案
一直很忙,忙的不可開交,以前我說有時間就來寫點東西,然後最近一直很忙,連論文,加新專案,事情挺多的,android原始碼還是很久以前下載的,今天sync發現突然不行了,報錯: error.GitError: device/common rev-list ('^7d4526
Android短輪詢解決方案——CountDownTimer+Handler
receiver font 網上 adc 開始 success 方法 www 請求 轉載請註明原文地址:http://www.cnblogs.com/ygj0930/p/7657194.html 一:應用場景 在諸如自動售賣機之類的掃碼支付場景中,客戶端
一張圖看懂混合雲數據同步一站式解決方案
數據摘要: 針對不同數據庫間數據實時同步難的問題,日前,阿裏雲宣布推出混合雲數據同步一站式解決方案,便於廣大雲產品用戶實現實時數據同步的混合雲支持,更為方便的是,該功能讓本地Oracle也能實現與雲上數據庫的實時同步。 針對不同數據庫間數據實時同步難的問題,日前,阿裏雲宣布推出混合雲數據同步一站式解決方案,便
第一篇:安裝Android Studio問題及其解決方案
.com 及其 pla try onf posit blog chmod 提示 ubuntu18.04配置android studio3.2.1環境 1.JDK安裝與配置:https://www.cnblogs.com/yuanbo123/p/5819564.html(按照
Unity Android il2cpp熱更解決方案
1. 簡介 這是Unity Android il2cpp熱更解決方案的Demo(Git地址)的說明。 和現有的熱更解決方案不同的是,他不會引入多餘的語言(只是UnityScript,c#...),對Unity程式設計和編碼沒有任何限制。你可以在預置和場景裡的GameObject上新增任何的Compnent
unity SkinnedMesh 播放動畫時與MeshCollider不同步問題解決方案
unity SkinnedMesh 播放動畫時與MeshCollider不同步問題解決方案 unity播放形變動畫時,物體包圍盒與物體不同步。原因是包圍盒沒有更新,並且形變動畫對應的MeshCollider更新的話,代價太大。所以unity雖然提供了機制,但是不提倡使用。核心方法是S
Android開發:最全面、最易懂的Android螢幕適配解決方案
前言 Android的螢幕適配一直以來都在折磨著我們Android開發者,本文將結合: 給你帶來一種全新、全面而邏輯清晰的Android螢幕適配思路,只要你認真閱讀,保證你能解決Android的螢幕適配問題! 目錄 定義 使得某一元
實現離線安裝、配置Android Studio開發環境 解決方案
近期專案需要提供AS的離線開發工具安裝 ,沒錯網上的帖子很多 ,但有問題的也很多,因為越往下做 ,一個個問題接踵而至,不同的嘗試,也發現出一條路子,但還是存在一定侷限,但能將就一下,聽我娓娓道來。 1.開發環境的準備 2.相關配置 開發工具準備: A. 
4種必須知道的Android螢幕自適應解決方案
<?xml version="1.0" encoding="utf-8"?> <resources> <dimen name="height_1_80">6px</dimen><dimen name="height_2_80">12px<
Android ANT 多渠道打包解決方案
<span style="font-size:18px;"><!--Android 分渠道打包步驟--> <!--打包之前請確定--> ANDROID_HOME 環境變數 即ANDROID_SDK的安裝路徑 如:
目前Android最全面、最易懂的Android螢幕適配解決方案
前言 Android的螢幕適配一直以來都在折磨著我們Android開發者,本文將結合: 給你帶來一種全新、全面而邏輯清晰的Android螢幕適配思路,只要你認真閱讀,保證你能解決Android的螢幕適配問題! 目錄 Androi
android 架包衝突解決方案
作為一名剛學android五個月的小白,之前無論學習基礎,還是看一些培訓機構的教學專案,裡面都是用listView來展示資料。 下午心血來潮,便想學習一下recycleView,則需要匯入一些其他人的
分享Windows伺服器網站檔案同步備份解決方案之cwRsyn進行檔案同步
本文和大家分享Windows伺服器網站檔案同步備份解決方案,來自部落格園dudu的文章。對於一個網站來說,使用者上傳檔案的同步備份是必需要解決的問題。對於有著巨量上傳檔案的大型網站,一般採用分散式儲存系統。而對於上傳檔案量不是很大的網站,只要在另外一臺伺服器上儲存上傳檔案的同
android.os.NetworkOnMainThreadException的解決方案
首先,確定AndroidManifest.xml中 <uses-permission android:name="android.permission.INTERNET" /> 其次,這次異常的丟擲是因為有一個網路操作試圖佔用主執行緒,我們建立一個新執
Android的Crash崩潰解決方案-Bugly的使用
我們在開發過程中,經常會遇到程式閃退,但是Eclipse的Consle和Logcat又沒有錯誤提示,或者是隻有用的時間長了才會出現的偶然崩潰,這種就很難修復bug,也嚴重影響使用者體驗,使用者分分鐘解
Android Base64的完美解決方案
public class Base64Encoder { private static final char last2byte = (char) Integer .parseInt("00000011", 2); pri
android滑動衝突的解決方案
一、前言 Android 中解決滑動的方案有2種:外部攔截法 和內部攔截法。 滑動衝突也存在2種場景: 橫豎滑動衝突、同向滑動衝突。 所以我就寫了4個例子來學習如何解決滑動衝突的,這四個例子分別為: 外部攔截法解決橫豎衝突、外部攔截法解決同向衝突、內部
Android 螢幕適配解決方案
螢幕適配問題的本質 使得“佈局”、“佈局元件”、“圖片資源”、“使用者介面流程”匹配不同的螢幕尺寸 使得“圖片資源”匹配不同的螢幕密度 佈局匹配 本質1:使得佈局元素自適應螢幕尺寸 佈局的子控制元件之間使用相對位置的方式排列,因為Relat
Live555用做RTSPClient時,利用RTP時間戳進行音視訊同步的解決方案(必須有RTCP支援才可行)
http://www.mworkbox.com/wp/work/551.html 先看來自Live555官網的2個常見問題: 問題1:Why do most RTP sessions use separate streams for audio and video?
android軟鍵盤問題解決方案(軟鍵盤佔據全屏,軟鍵盤排擠頁面佈局)
1.在使用EditText進行文字輸入時,若不進行特殊的設定,使用Android自帶的軟鍵盤,該軟鍵盤會佔用整個介面,那麼,如何讓鍵盤只佔用螢幕的一部分呢? 答:android:imeOptions="flagNoExtractUi" //使軟鍵盤不全屏顯示,只佔用一部