需要了解Git/Gerrit命令(获取和推送)

Pla*_*oth 5 git gerrit

我正在关注我们IT部门的一个例子,我想了解这个命令究竟在做什么:

git fetch origin +refs/changes/*:refs/remotes/origin/changes/*
Run Code Online (Sandbox Code Playgroud)

为了给出一些参考框架,这是持续集成(CI)工具的一部分,这是检查要测试的代码的步骤的一部分.通过向Gerrit推送CI来触发CI构建:

git push origin HEAD:refs/for/master
Run Code Online (Sandbox Code Playgroud)

我的第二个问题是,如果我想将更改推送到开发分支,我可以使用:

git push origin HEAD:refs/for/development
Run Code Online (Sandbox Code Playgroud)

unc*_*all 1

典型的补丁拉取如下所示: git pull ssh://www.example/com:29418/project refs/changes/24/24/2

这将拉取您的项目加上第二个补丁集的更改 24。因此,当您拉取所有更改时,可能会很多。

我建议您使用 Jenkins (CI) 和 Gerrit 插件,并确保指定choosing strategyas Gerrit Trigger。这将确保您的构建将测试适当的更改集。

是的,您可以推送到开发分支。当然,您需要确保您拥有正确的权利。最好是先在 Gerrit 中创建分支,这样您就不必授予“创建引用”权限,并防止由于拼写错误等错误创建分支。