如何在Gerrit中执行强制推送?用git-review覆盖已上传分支
用git-review覆盖Gerrit已上传分支的操作方法
前提准备
- 当前处于本地
Task1分支 - 已完成新提交(丢弃旧提交后的最终版本)
- 工作区无未提交的修改(可通过
git status确认)
操作步骤
强制推送新提交到Gerrit
直接执行带-f(force)参数的git-review命令,覆盖服务器上的旧评审:git review -f(可选)指定目标分支
如果需要推送到Gerrit的非默认目标分支(比如develop而非master),在命令后添加分支名:git review -f <目标分支名>示例:
git review -f develop
关键细节说明
- Change-Id关联:Gerrit通过提交信息中的
Change-Id关联评审记录。如果新提交沿用了旧提交的Change-Id,执行命令后旧评审的评论历史会保留,仅替换提交内容;若新提交生成了新的Change-Id,会创建新评审,但-f参数仍会覆盖同本地分支关联的旧评审。 - 保留评审历史的技巧:若想保留旧评审的评论,可从Gerrit页面或本地旧提交的commit信息中找到旧
Change-Id,将其添加到新提交的commit message末尾,再执行git review -f。
前置检查
推送前建议确认本地提交正确:
git log --oneline -n 5
内容的提问来源于stack exchange,提问作者JobProcessTask
相关产品推荐
相关产品推荐

