作者:小可爱小潴 | 来源:互联网 | 2023-05-29 02:02
执行命令:./create_project.sh xxx.xml “create new git”
xml后面那句是仓库描述,随便写什么。
create_project.sh的脚本内容如下:请按实际情况修改gerritip和username
ROOT=`pwd`PROJECT_TXT=$1SERVER_IP=gerritipUSER_NAME=username
echo "creating project_list"
grep "name=.*path=.*" $1 | sed -e "s/.*name=\"\([^\"]*\)\" *path=\"\([^\"]*\)\".*/\2:\1/" > $ROOT/$1_tmp.txt
while read LINEdoecho ${LINEdone <$1_tmp.txtFIRST_PROJECT&#61;&#96;sed -n 1p $1.txt&#96;
echo "The first project is ${FIRST_PROJECT}"
ssh -p 29418 ${USER_NAME}&#64;${SERVER_IP} gerrit create-project -d $2 --empty-commit ${FIRST_PROJECT}
echo "The first project has been created!!!"
echo "Ready to create other projects..."
for PROJECT in &#96;cat $1.txt&#96;doecho ${PROJECT}ssh -p 29418 ${USER_NAME}&#64;${SERVER_IP} gerrit create-project -p ${FIRST_PROJECT} --empty-commit -d $2 ${PROJECT}echo "create ${LINE} done!!!"done
rm -fr $ROOT/$1_tmp.txt
rm -fr $ROOT/$1.txt
代码仓权限继承脚本&#xff1a;把需要继承权限的仓库名写入project.txt中&#xff0c;然后执行以下脚本
SERVER_IP&#61;gerritip
USER_NAME&#61;usernamefor PROJECT in &#96;cat project.txt&#96;doecho ${PROJECT}ssh -p 29418 ${USER_NAME}&#64;${SERVER_IP} gerrit set-project-parent --parent platform/art ${PROJECT}done
代码中platform/art是继承的权限仓