【gerrit】记录:gerrit提交代码

记录自己使用gerrit提交代码的过程。

公司搭建好gerrit服务、管理员建好项目、给公私钥。

gerrit认证:

登录,输入用户名(密码为空)。
设置-认证:http://192.168.xx.xxx/#/settings/ssh-keys ,
将id_rsa.pub内容添加到key中。
在这里插入图片描述

http://192.168.xx.xxx/#/settings/contact
添加自己的邮箱并登陆邮箱激活用户

clone项目:

1、 hookanonymous http
git clone “http://192.168.21.193/scsp”

结果:开始成功了,但是gerrit提交代码失败,少changeID。后来再用这个方式clone失败。

2、http
git clone “http://sunru@192.168.21.193/a/scsp”

要输密码(登录后setting-http password 生成密码)
结果: 可以clone,但是gerrit提交还是失败,少changeID)

3、ssh
没有测试。

4、hook and http
在这里插入图片描述
结果: clone成功,commit有changeID,使用gerrit 进行push成功。

【其他】

  1. git指令:git log
    查看所有commit记录。
    在这里插入图片描述

修改上次提交(amend)

提交的代码需要修改,被打回来。

  1. 修改要修改的地方
  2. git add -A
  3. git commit --amend
    输入指令回车后,出现上次提交时的commit 记录;
    按insert 键进入编辑模式。
    改好后按ESC键, 输入 :wq 回车=> 保存退出。
  4. push 代码。

==============================================
【clone代码】
第一次clone的时候,会让输入账号密码,这个密码是setting中new的。

=============================================

【gerrit push 被拒】

refs/heads/dev:refs/for/dev [remote rejected] (change http://192.168.19.29:31005/c/clms/+/1699 closed)

查看gerrit, 这条已经abandoned。
在这里插入图片描述
解决办法1
找到一个类似情况的解决方法。

1、git commit --amend
2、删除 changeID
3、保存,退出编辑。
4、删了changeID 会生成新的changeid。再push。

使用之后, push依然被拒绝。
Push rejected: Push dev to origin/refs/for/dev was rejected by remote

解决办法2:
合并最近的几条提交记录,然后push。
git log --oneline:确实存在几条commit。
1、合并commit记录: git rebase -i HEAD~3 【合并最近三条】。
2、 选择保留还是舍弃各条commit。
3、改完后 wq退出。
4、再次push。成功。

===================================================

冲突解决:

提交新的代码时,运行git add -A
运行commit

在运行git pull --rebase 时,显示有文件在本地被删。(看样子应该是冲突了)。

在这里插入图片描述
在这里插入图片描述
解决完冲突, 再: git add -A
运行:git rebase --continue

最后push到gerrit。
ok,解决问题,push成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值