一、基本命令
查看gerrit上所有项目:ssh -p 29418 管理员账号@服务器IP地址 gerrit ls-projects
新建项目:ssh -p 29418 管理员账号@服务器IP地址 gerrit create-project 新建项目名称
给新建的项目添加分支:git push 管理员账号@服务器IP地址:项目名称 HEAD:refs/heads/分支名称
二、查看下载下来的android源码projectlist与gerrit上的projectlist是否有重叠部分,如何筛选出未重叠部分
2.1 cd android 源码目录
2.2 拿到下载的Android源码REPO_PROJECT:repo forall -c 'echo $REPO_PROJECT' | tee pro.log
2.3 拿到gerrit上的PROJECTList:ssh -p 29418 管理员账号@localhost gerrit ls-projects | tee localPro.log
2.4 将两份log倒入至excel内------数据>>>倒入数据>>>选择数据源
2.5 在Excel内使用函数VLOOKUP筛选出未重叠部分:=VLOOKUP(A2,Sheet2!A:A,1,FALSE)
三、在gerrit上创建对应的项目
3.1 将第二步筛选出的未重叠部分前边添加一个表格列然后添加字符串:ssh -p 29418 管理员账号@服务器IP地址 gerrit create-project
3.2 将Excel内所有文本复制到文本编辑器中(小技巧:单元格之间的分割符如何找到去除---找到横向两个空的单元格第一个单元格填入1,第二个单元格填入2,然后复制到文本编辑器,之后复制数字1和2之间的那个字符,利用文本编辑器的查找替换功能,替换掉成你想要的字符串就可以了,我一般替换成空格)
3.3将文本编辑器保存为.sh 结尾的文件/习惯用python的同学也可以保存为python文件
3.4给保存好的文件授权:chmod 777 create.sh (这边我保存的文件名为create,同学填入你自己的文件名即可)
四、上传代码至gerrit,并创建新的分支MyAndroid
4.1 cd android 源码目录
4.2 (repo forall -c 'pwd && git push 管理员账号@服务器IP地址:/$REPO_PROJECT HEAD:refs/heads/MyAndroid') 2>&1 | tee push.log
五、校核是否所有项目都上传成功
5.1 grep -iE "remote: Processing changes: refs: 1, done " push.log | wc -l
如果done的数量与 步骤2.2 拿到的projectlist数量对应不上,则查询log,然后去到上传失败的project内执行git push 管理员账号@服务器IP地址:/项目名称 HEAD:refs/heads/MyAndroid
六、关于default.xml编辑与上传
default.xml编辑参考此链接即可:https://www.cnblogs.com/helloworldtoyou/p/6430545.html
default.xml上传:git push 管理员账号@服务器IP地址:/platform/manifest HEAD:refs/heads/MyAndroid
(这边platform/manifest是我的manifest在gerrit上对应的项目名称)