2

如何向已审核的现有 Gerrit 分支提交新的“补丁集”?当我登录评论网站时,我有机会复制 checkout/pull/cherry-pick 和 patch 命令。

我尝试使用 checkout 命令将代码放入我的本地工作区:

git fetch http://website/project refs/changes/##/####/# && git checkout FETCH_HEAD
git checkout -b my_new_branch

然后我对文件进行了更改,然后通过运行将本地文件添加到分支

git add <filename>

现在要将它们提交回存储库,我想我需要做一个

repo commit -m "message"
repo upload <projectname>

但它告诉我我没有分支!所以我尝试了一个

repo start <branch name> <project name>

这清除了我的更改....回到A点....这里命令的正确顺序是什么:)对不起,伙计们,我仍在努力解决整个git系统!Blaaah ... SVN 用户在这里 :)

4

1 回答 1

7

我们使用的是没有 repo 的 gerrit,所以这将是我在审查后修改现有补丁的方法:

结帐更改(结帐 -b 是可选的,但建议使用)

# From gerrit web, button "Download->Checkout"
git fetch http://website/project refs/changes/##/####/# && git checkout FETCH_HEAD

# This is a good moment to create a local branch, just in case...
git checkout -b my_new_branch

修复问题,修复提交并推动审查。Git 会给你一个编辑消息的机会,记得保留 Change-Id 或者如果你没有任何钩子就添加它

git add <filename>
git commit --amend
git push http://website/project HEAD:refs/for/<branch_name>

您可以从 gerrit Web 界面中的现有 Change 中获取分支名称和 Change-Id。

更多信息:Gerrit 上传更改

于 2011-10-07T16:11:46.303 回答