repo工程创建+gerrit管理

repo下载(只执行一次)

  1. curl -sSL 'https://gerrit-googlesource.proxy.ustclug.org/git-repo/+/master/repo?format=TEXT' |base64 -d > ~/bin/repo

  2. repo init时会再次下载repo脚本源码(.repo/repo),所以要换下载源
    (这里会出现的问题主要是python版本过低报错 请确认ptython在3.6以上
    方法1:vim ~/.bashrc
    添加 export REPO_URL='https://gerrit-googlesource.proxy.ustclug.org/git-repo'
    source ~/.bashrc
    方法2:vim ~/bin/repo
    119行 REPO_URL = "https://gerrit.googlesource.com/git-repo"

    REPO_URL='https://gerrit-googlesource.proxy.ustclug.org/git-repo'

  3. repo init -u ssh://用户名@地址:端口/项目 -b 分支
    文件夹.repo/manifeste/default.xml文件记录接下来同步时的分支。

  4. repo init --config-name
    这里要设置下姓名和邮箱,确保和Gerrit相同

4.5 (执行此行 不用执行第9.条)vim .repo/manifeste/default.xml
添加加粗部分<remote name="origin" fetch="." review="ssh://gaojian@192.168.0.39:29418" />

  1. repo sync
    (这里如果出现setenv错误 是因为ssh版本的问题可能是版本过新,新版本的ssh取消了stp的传输方式所以报错,安装低版本即可
    这里按照.repo/manifeste/default.xml中开始checkout代码

  2. repo start 新分支名 --all
    为所有项目新建分支

可选
7. 添加repo push指令跳过gerrit
复制push.py到.repo/repo/subcmds/
执行repo selfupdate

  1. 下载钩子文件
    repo forall -c 'gitdir=$(git rev-parse --git-dir) ; scp -p -P 29418 用户名@gerrit服务器:hooks/commit-msg ${gitdir}/hooks/ ;'
    不带最后分号会报错

  2. 设置 repo forall -c ' git config remote.origin.review ssh://用户名@gerrit服务器:端口29418'
    查看git config --get remote.origin.review

  3. repo upload --re=审核人
    修改多个项目此时会选择上传的commit
    修改单个项目会让敲入y (脚本里写的yes、t、true 都生效

其他

gerrit上只有评分为+2的修改可以并入项目。 所以评分只有-1到1权限的用户只能凑个热闹。多少个+1评分都不能变成+2。
.git/config项目名称

posted @ 2024-06-15 13:43  一般摸鱼。  阅读(228)  评论(0)    收藏  举报