对gitlab仓进行repo整改
一个产品如果涉及到多个gitlab仓,在下载更新或固定tag时,必须逐个进入处理,处理繁琐且容易出现问题。所以针对这类情况,引入repo[^footnote]对git进行封装,将多个git仓进行集中管理.
目录
一、配置repo[^footnote]
1、配置repo命令环境参数
在根目录下创建.bin文件夹
mkdir ~/.bin
配置环境变量(可为用户变量,也可设为永久系统变量)
PATH=~/.bin:$PATH
2、下载repo脚本
git clone https://gerrit-googlesource.lug.ustc.edu.cn/git-repo
3、配置repo
将2中下载的文件夹中repo文件拷贝至1中的.bin目录下
cd git-repo;cp repo ~/.bin
修改repo脚本执行权限
chmod a+x ~/.bin/repo
3、创建目录并归档repo脚本
mkdir code;cd code;mkdir .repo
将git-repo文件拷贝至.repo目录中,并改名为repo
二、创建manifest文件(git仓管理文件)[^footnote]
远程
name:在每一个.git/config文件的remote项中用到这个name,即表示每个git的远程服务器的名字(这个名字很关键,如果多个remote属性的话,default属性中需要指定default remote)。git pull、get fetch的时候会用到这个remote name。
alias :可以覆盖之前定义的remote name,name必须是固定的,但是alias可以不同,可以用来指向不同的remote url
fetch :所有git url真正路径的前缀,所有git 的project name加上这个前缀,就是git url的真正路径
review :指定Gerrit的服务器名,用于repo upload操作。如果没有指定,则repo upload没有效果默认
设定所有projects的默认属性值,如果在project元素里没有指定一个属性,则使用default元素的属性值。remote :远程服务器的名字(上面remote属性中提到过,多个remote的时候需要指定d