一、gerrit安装
1、http://blog.csdn.net/benkaoya/article/details/8680886
2、http://blog.csdn.net/csfreebird/article/details/7583911
3、http://blog.csdn.net/airk000/article/details/8610076
二、服务的开启、停止与重启
1、gerrit服务
/home/gerrit/gerrit_site/bin/gerrit.sh stop
/home/gerrit/gerrit_site/bin/gerrit.sh start
/home/gerrit/gerrit_site/bin/gerrit.sh restart
2、apache2服务
sudo /etc/init.d/apache2 stop
sudo /etc/init.d/apache2 start
sudo /etc/init.d/apache2 restart
三、gerrit添加新用户
htpasswd /home/gerrit/gerrit_site/etc/passwords "yqdeng"
四、查看gerrit命令:
ssh -p 29418 yqdeng@192.168.10.57 gerrit --help
五、数据库操作:
1、进入数据库:ssh -p 29418 gerrit@192.168.10.57 gerrit gsql
2、查询,如select * from ACCOUNTS
3、删除,如delete from ACCOUNT_PATCH_REVIEWS where CHANGE_ID=7,
如delete from CHANGES where DEST_PROJECT_NAME='test_project' (注意是单引号)
六、查看、创建和删除工程
1、查看(可在服务器也可在本地):ssh -p 29418 YOURNAME@192.168.10.57 gerrit ls-projects
2、创建(要登陆gerrit服务器):ssh -p 29418 gerrit@192.168.10.57 gerrit create-project -n PROJECT_NAME
3、删除(要登陆gerrit服务器):
a、先在数据库中将工程信息删除,可能存在几个表中;
b、cd /home/gerrit/gerrit_site/git,rm PROJECT_NAME.git -rf
七、初始化新建的空工程
由于第一次上传代码到空工程中,代码量相当大,如kernl的代码。如果提交代码后还在gerrit服务器上审核,需要审核N多文件,没有必要,用下面的方式可绕过gerrit直接推送到gerrit仓库,当然,这需要gerrit用户密码。
1、由本地git仓库新建:
a、进入本地仓库目录git remote add origin2 gerrit@192.168.10.57:/home/gerrit/gerrit_site/git/linux-mini/linux-2.6.31.3.git
b、git push origin2 master
2、本地无git仓库,只有代码
a、现在本地获得新建的空仓库git clone ssh://YOURNAME@192.168.10.57:29418/PROJECT_NAME.git
b、拷贝代码到空项目中
c、进入本地仓库目录git remote add origin2 gerrit@192.168.10.57:/home/gerrit/gerrit_site/git/linux-mini/linux-2.6.31.3.git
d、git push origin2 master
八、用户配置gerrit
1、登录gerrit服务器,如192.168.10.57:8080,进入右上角Settings
2、设置用户名并注册邮箱(并完成邮箱验证)记住点 Save Changes
3、将 cat ~/.ssh/id_rsa.pub结果(如果为空,先用 ssh-keygen 生成密钥)粘贴到SSH Public Keys
九、使用git获取、提交代码
1、git clone ssh://YOURNAME@192.168.10.57:29418/PROJECT_NAME.git
2、git config remote.origin.push master:refs/for/refs/heads/master
3、# do your work & local commit
4、git push
5、更新代码:git pull origin master
十、git remote add origin2 git-user@192.168.8.8:~/git-server/linux3.0.8-xpad