Chinaunix首页 | 论坛 | 博客
  • 博客访问: 530517
  • 博文数量: 18
  • 博客积分: 352
  • 博客等级: 二等列兵
  • 技术积分: 770
  • 用 户 组: 普通用户
  • 注册时间: 2011-09-15 15:44
文章分类

全部博文(18)

文章存档

2013年(4)

2012年(1)

2011年(13)

分类: Android平台

2013-12-21 20:25:35

问题背景:
A公司有两个site,x和y。x site和y site分别有自己的IT部门管理着自己site的代码。
现在y site的 IT部门把 x site的代码同步到了自己本地的服务器(没有同步manifest.git)。同时x site给出了 项目的Manifest文件。
y site的员工如何download到这一分代码?

解决方案:
假设这个项目的manifest文件,名字叫做 xxxx.xml
可以通过如下方法将代码下载到本地目录。

开始之前需要确认代码已经被同步到本地服务器(xxx.xxx.xxx.xxx)
因此需要修改xxxx.xml manifest文件为

首先需要模拟一个服务器仓库
mkdir /tmp/manifest          ------> 将/tmp/manifest 模拟为服务器manifest 仓库的目录
cp xxxx.xml /tmp/manifest   ------> 将manifest 文件拷贝到服务器manifest 仓库
git init
git add .
git commit -am "test"
现在我们成功的模拟了一个服务器的manifest仓库。/tmp/manifest

然后,cd 到你的代码工作目录
cd ~/CODE/xxxx/
repo init -u /tmp/manifest -m xxxx.xml
repo sync -j4
附上原理图


另外在repo sync的过程中可能会出现如下问题

如果遇到

Syncing work tree:  50% (140/279)  error: revision xxx  in xxxx not found

 

这类错误,有两种情况

第一:

应该是服务器xxx.xxx.xxx.xxx 没有xxxx 仓库导致

因此需要将 ~/CODE/xxxx/.repo/manifest.xml 中的

xxxx 对应的的行删除,再次repo sync 就可以了

 

第二:

~/CODE/xxxx/.repo/manifest.xml 文件中的 对应该 代码仓库配置不对。

请检查 revision 信息



阅读(7528) | 评论(0) | 转发(0) |
0

上一篇:gpg: Can't check signature: public key not found

下一篇:没有了

给主人留下些什么吧!~~