部署自己的repo服务器以及克隆远程存在的git库

1、从远程服务器上克隆repo库
如下:
git@NEOser:~/repositories/X9Project$ git clone --bare https://mirrors.tuna.tsinghua.edu.cn/git/git-repo


2、创建manifest.git库用来管理所有的git子库
git服务器端:
在git服务器的/home/git/repositories/X9Project目录中添加manifest.git库
git@NEOser:~/repositories/X9Project$ mkdir manifest.git
git@NEOser:~/repositories/X9Project$ cd manifest.git
git@NEOser:~/repositories/X9Project/manifest.git$ git --bare init

在编译机器的客户端:
添加default.xml文件并修改version号,分别上传到master分支和dev分支:
zhaojingrong@root01-PowerEdge-T440:~$ git clone git@192.168.1.117:/home/git/repositories/X9Project/manifest.git
zhaojingrong@root01-PowerEdge-T440:~$ cd  manifest
如下:

修改manifest.git库master和development分支的default.xml文件,分别上传到manifest.git库master和development分支上
Master分支:
zhaojingrong@root01-PowerEdge-T440:~/manifest $
git clone git@192.168.1.117:/home/git/repositories/X9Project/manifest.git
zhaojingrong@root01-PowerEdge-T440:~/manifest $ vim default.xml  如下:


保存,上传到master分支:
zhaojingrong@root01-PowerEdge-T440:~/manifest $ git push origin master
development分支:

保存,上传到development分支:
zhaojingrong@root01-PowerEdge-T440:~/manifest $ git push origin development
其中default.xml文件:
<remote fetch="ssh://git@172.168.1.117:/home/git" name="origin"/>
  <default remote="origin" revision="master" sync-j="4"/>
  <project name="repositories/X9Project/x9.git" path="x9" branch="master"/>
说明:
remote fetch:远程git服务器的地址,即远程git账号的路径 
name:是远程git账号的别名,取名为origin
revision:版本号,即可包含的子库指向的代码分支,必须跟branch保持一致
project name:远程git账号下的git库路径
path:下载到本地的路径

3、创建default.xml文件包含的子库并添加代码以及创建对应的master分支和dev分支

git服务器端(以x9和frame/base库为列子):
git@NEOser:~/repositories/X9Project$mkdir x9
git@NEOser:~/repositories/X9Project$ mkdir -p frame/base.git
git@NEOser:~/repositories/X9Project$ cd x9
git@NEOser:~/repositories/X9Project/x9$ git --bare init
git@NEOser:~/repositories/X9Project/x9$ cd ../frame/base.git
git@NEOser:~/repositories/X9Project/x9/frame/base.git$ git --bare init

编译机器客户端:

x9子库:
zhaojingrong@NEOser:~$ git clone git@192.168.1.117:/home/git/repositories/X9Project/x9.git
zhaojingrong@NEOser:~$ cd x9
zhaojingrong@NEOser:~/x9$ mv ../GM620S/*  ./
zhaojingrong@NEOser:~/x9$ git add ./
zhaojingrong@NEOser:~/x9$ git commit -m "init x9 project"
zhaojingrong@NEOser:~/x9$ git -u origin master
zhaojingrong@NEOser:~/x9$ git push origin master:development
frame/base子库:
zhaojingrong@NEOser:~$ git clone git@192.168.1.117:/home/git/repositories/X9Project/frame/base.git
zhaojingrong@NEOser:~$ cd frame/base
zhaojingrong@NEOser:~/frame/base$ mv ../frame/base/*  ./
zhaojingrong@NEOser:~/frame/base$ git add ./
zhaojingrong@NEOser:~/frame/base$ git commit -m "init frame/base.git"
zhaojingrong@NEOser:~/frame/base$ git -u origin master
zhaojingrong@NEOser:~/frame/base$ git push origin master:development
其它子库类似处理即可

4、环境变量设置
repo工具客户端环境变量设置:

zhaojingrong@NEOser:~$ mkdir Bin
zhaojingrong@NEOser:~/Bin$  git clone git@192.168.1.117:/home/git/repositories/X9Project/git-repo.git
zhaojingrong@NEOser:~/Bin$ vim ~/.bashrc
修改如下:
添加:export PATH=/home/zhaojingrong/Bin/git-repo:$PATH  
注意:不是repo文件的路径,而是git-repo文件夹的路径


最后:
需要从供应商或其它路径克隆一个git库,只需要执行以下命令即可:
git clone --bare 远程git库的地址
git clone --bare git://aosp.tuna.tsinghua.edu.cn/android/git-repo
 git://aosp.tuna.tsinghua.edu.cn/android/git-repo是远程aosp.tuna.tsinghua.edu.cn服务器上的repo库的地址

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值