【转】repo sync同步Android 源代码下载到99%出错
原文网址:http://blog.csdn.net/mr_president/article/details/7693707
根据Google官网上的方法在我们实验室搭建了一个本地的Android代码镜像服务器,
今天一个师弟在服务器上利用repo sync下载源代码下到99%的时候,出现了下面的问题:
$ repo sync
fatal: Not a git repository: '/home/andev/android/.repo/projects/bionic.git'
Fetching projects: 99% (219/221) fatal: Not a git repository: '/home/andev/android/.repo/projects/bionic.git'
上网搜了很长时间都找不到原因,利用Ctrl+z强行终止下载,然后重新repo sync还是出现同样的错误,
最后发现是repo版本的问题,由于Google官方不定期的更新repo,我那个师弟的repo版本有点旧,重新下载
最新版本的repo,重新repo init,repo sync就不会出现上面的问题了。
repo sync停止了怎么办?
repo sync是可以断点续传的,中间要是某个project断了直接ctrl c就可以下一个了,到时候在重新sync一遍
或者ctrl z, 中断之后再进行repo sync即可
repo的小结
http://blog.csdn.net/wh_19910525/article/details/8164107
repo只是google用Python脚本写的调用git的一个脚本,主要是用来下载、管理Android项目的软件仓库。
1. 下载 repo 的地址: http://android.git.kernel.org/repo ,可以用 wget http://android.git.kernel.org/repo 或者 curl http://android.git.kernel.org/repo >~/bin/repo 来下载 repo , chmod a+x ~/bin/repo
2. 用repo sync 抓取 android source code 的时候,会经常出现一些错误导致 repo sync 中断,每次都要手动开始。
可以在一个脚本里写如下的命令,来自动取重复:
repo sync
while [ $? -ne 0 ]
do
repo sync
done
repo sync [project] 下载最新本地工作文件,同步 repository 中的代码。 可以指定需要更新的project , 如果不指定任何参数,会同步整个所有的项目
如果是第一次运行 repo sync , 则这个命令相当于 git clone ,会把 repository 中的所有内容都拷贝到本地。
如果不是第一次运行 repo sync , 则相当于 更新 和 自动合并 动作;
repo sync 会更新 .repo 下面的文件。 如果在merge 的过程中出现冲突, 这需要手动运行 git rebase --continue
3. repo help [ command ] , 显示command 的详细的帮助信息内容
如:可以用命令: repo help init 来获取 repo init 的其他用法
4. repo init -u URL , 在当前目录安装 repository ,会在当前目录创建一个目录 ".repo" , -u 参数指定一个URL, 从这个URL 中取得repository 的 manifest 文件。
repo init -u git://android.git.kernel.org/platform/manifest.git ,可以用 -m 参数来选择 repository 中的某一个特定的 manifest 文件,如果不具体指定,那么表示为默认的 manifest 文件 (default.xml)
repo init -u git://android.git.kernel.org/platform/manifest.git -m dalvik-plus.xml , 可以用 -b 参数来指定某个manifest 分支。
repo init -u git://android.git.kernel.org/platform/manifest.git -b release-1.0
5. repo upload[ project-list ] 上传修改的代码 ,如果你本地的代码有所修改,那么在运行 repo sync 的时候,会提示你上传修改的代码,所有修改的代码分支会上传到 Gerrit (基于web 的代码review 系统), Gerrit 受到上传的代码,会转换为一个个变更,从而可以让人们来review 修改的代码。
6. repo diff [ project-list ] 显示提交的代码和当前工作目录代码之间的差异。
7. repo forall -c command,对所有项目执行一个command命令,这个命令 相当 好用;
8. repo start newbranchname 创建新的branch分支。 "." 代表当前工作的branch 分支。
9. repo prune [project list] 删除已经merge 的 project
10. repo status 显示 project 的状态
【转】repo sync同步Android 源代码下载到99%出错的更多相关文章
- Android源代码下载方法具体解释
作者:张星 相信非常多下载过内核的人都对这个非常熟悉 git clone git://android.git.kernel.org/kernel/common.git kernel 可是这是在曾经,如 ...
- Ubuntu环境中的Android源代码下载
跟随“老罗的Android之旅”学习Android系统,首先得学会创建能用于编译Android源代码的环境. 文章参考:http://0xcc0xcd.com/p/books/978-7-121-18 ...
- android源代码下载备注
android源代码下载的參考网上比較多,就不贴上来了,主要是备注下下载源代码过程中须要注意的地方. 1. google官方下载步骤地址: http://source.android.com/sour ...
- Android源代码下载之《Android新闻client源代码》
介绍 Android新闻client源代码,功能上分为:新闻.关注.读报.微博.里面比較有特色的就是读报功能.真正安装报纸的排版进行读报.给人得感觉就像是在读真实的报纸.事实上即使首页的动态云标签很有 ...
- 自动同步Android源代码的脚本(repo sync)
#!/bin/bash echo "================start repo sync====================" repo sync -j5 ]; do ...
- Android源代码下载过程中无法下载repo的解决方法【转】
本文转载自:http://blog.csdn.net/shangyuan21/article/details/17618575 我们都知道下载Android源代码需要使用repo进行辅助下载,但是最进 ...
- Android源代码下载 “Gerrit下载源代码”
repo init -u ssh://jenkins@gerrit.y:29419/manifest -m k86A.xml 使用-m参数指定具体使用的是k86A.mxl文件 步骤1. curl ht ...
- 1、android源代码下载及目录分析,和eclipser的跟踪
1.在eclipse中跟踪源代码:假如对mainactivity.java里面的activity按Ctrl+鼠标左键(前提已经导入android源代码:方法1:在项目点击右键,然后找到properti ...
- 1、android源代码下载与跟踪
学习Android源代码的目的 理解Android API查找API(Activity.Content Provider等) 高级应用开发(ROM定制) 在不同平台下载Android源代码 W ...
随机推荐
- apache 启动不了
netstat -ano|findstr "443" 发现443端口被占 记录下443端口对应的PID 进入任务管理器,查看进程,发现为一个叫做vmware-hostd.exe的进 ...
- bzoj1145
题目:http://www.lydsy.com/JudgeOnline/problem.php?id=1145 神题...... 定义f(abcd)为高度排名为abcd的个数,例如闪电的个数为f(13 ...
- python RabbitMQ队列使用(入门篇)
---恢复内容开始--- python RabbitMQ队列使用 关于python的queue介绍 关于python的队列,内置的有两种,一种是线程queue,另一种是进程queue,但是这两种que ...
- c++读取ccbi
loader类文件: 需要定义CCB_STATIC_NEW_AUTORELEASE_OBJECT_METHOD(ButtonTestLayerLoader, loader); 这个宏定义是定义静态的l ...
- 【InversionCount 逆序对数 + MergeSort】
Definition of Inversion: Let (A[0], A[1] ... A[n], n <= 50) be a sequence of n numbers. If i < ...
- openfire文件夹
插件开发 学习制作第一个 openfire 插件 http://www.cnblogs.com/jying/p/3683409.html 跟我一步一步开发自己的Openfire插件 http://bl ...
- WebApi2官网学习记录---批量处理HTTP Message
原文:Batching Handler for ASP.NET Web API 自定义实现HttpMessageHandler public class BatchHandler : HttpMess ...
- jquery easyui-datagrid 如何清空数据
//清空原有数据 方法1: var item = $('#filegrid').datagrid('getRows'); if (item) { ; i >= ; i--) { var in ...
- Oracle序列简单应用
/* --指定cache的值 如果指定CACHE值 oracle就可以预先在内存里面放置一些sequence 这样存取会快些 cache里面 的取完 oracle自动再取一 组到 cache 使用ca ...
- TOJ3596 二维背包
3596. Watch The Movie Time Limit: 2.0 Seconds Memory Limit: 65536KTotal Runs: 424 Accepted Run ...