问题背景:
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
信息
阅读(7488) | 评论(0) | 转发(0) |