首页 > 解决方案 > 多个开发人员如何在同一功能分支上工作 gerrit

问题描述

我是使用 Gerrit 审查流程的新手,之前在 GitHub 和 GitLab 有很好的经验。但看起来 Gerrit 审查系统的工作方式有点不同。所以我创建了一个名为 feature/test 的功能分支。该分支包含一个测试提交,并且该提交已被推送到 Gerrit。可以看到带有唯一更改 ID 和提交的 Gerrit 更改。

现在的问题是,在这个功能分支上,3 个开发人员将工作,他们需要不断地相互获取具有相同更改 id 的更改。

有人可以帮忙吗,我需要做什么。因为当我用一个测试提交拉出这个特性分支时,我在不同的地方看不到更改。

标签: githubgerrit

解决方案


我不明白您所说的“使用相同的更改 ID 获取彼此的更改”是什么意思。Change-Id 是一个唯一编号,用于标识 Gerrit 中的更改。每个开发人员所做的每个更改都会有不同的 Change-Id。

在 Gerrit 上工作的更好过程如下:

1-更新本地存储库

git fetch

2-基于远程分支创建工作分支:

git checkout -b work1 origin/feature/test

3-进行更改并提交

git add
git commit

4- 将您的更改推送到 Gerrit 上进行审核:

git push origin HEAD:refs/for/feature/test

如果审稿人建议做某事:

1-检查工作分支

git checkout work1

2-修复您的更改并提交

git add
git commit --amend

3-将修复推送到 Gerrit:

git push origin HEAD:refs/for/feature/test

所有开发人员都可以使用相同的流程并行工作。您还可以通过在等待审核时创建其他工作分支(work2、work3 等)来并行工作。通过始终将工作分支基于远程分支而不是先前的工作分支来避免序列化提交。

读取功能分支时,可以将其合并到主分支(主分支、发布分支或其他任何名称)中。


推荐阅读