首页 > 解决方案 > 是否可以将更改推送到已合并到 Gerrit 中的分支中

问题描述

我有一个名为bugs_feature的分支,我已经合并到开发分支中。下次当我在修复了其他错误的同一分支上工作时,我可以将该修复推送到已经处于合并状态的同一分支bugs_feature以进行代码审查。

我尝试过使用以下命令,但它不起作用

      xxxx@xxxx-MacBook-Pro SampleApp % git commit -m "Fixed issue HRODS-945"
   [bugfix_dashboard 226f6b6] Fixed issue HRODS-945
    5 files changed, 78 insertions(+), 45 deletions(-)
   xxxx@xxxx-MacBook-Pro SampleApp % git push 
   "https://xxxx@reviewba.xxxxx.com:8459/a/Sample/Sample-mobile-app" 
   HEAD:refs/for/bugfix_dashboard

   Counting objects: 34, done.
   Delta compression using up to 8 threads.
   Compressing objects: 100% (22/22), done.
   Writing objects: 100% (34/34), 4.43 KiB | 1.48 MiB/s, done.
   Total 34 (delta 19), reused 0 (delta 0)
   remote: Resolving deltas: 100% (19/19)
   remote: Processing changes: refs: 1, done    
   To https://reviewba.xxxx.com:8459/a/Sample/sample-mobile-app
   ! [remote rejected] HEAD -> refs/for/bugfix_dashboard (change 
   https://reviewba.xxxxx.com:8459/c/Sample/sample-mobile-app/+/185 closed)
   error: failed to push some refs to 
  'https://xxxxxx@reviewba.xxxxx.com:8459/a/Sample/sample-mobile-app'

甚至尝试使用 git commit --amend 并修改了更改后的 ID,因此 gerrit 可能会将其视为代码审查的新推动力。

是因为分支已经合并我无法推送还是 Gerrit 不支持将代码推送到已经合并的分支。

谢谢。

标签: iosreactjsgitreact-nativegerrit

解决方案


在遵循 git 命令提示符消息的提示后,这对我有用。

  remote: ERROR: commit ac81273: invalid Change-Id line format in message footer
  remote: 
  remote: Hint: run
  remote:   git commit --amend
  remote: and move 'Change-Id: Ixxx..' to the bottom on a separate line
  remote: 

第 1 步:使用 git commit -amend 后

当您进入先前提交消息屏幕的编辑格式时。

第 2 步:转到更改 ID 的行并将其移动到向下和顶部的几行

第 3 步:输入更改 ID:“您的提交 ID 位于此处”(应类似于以下格式)。

  • 它以大写的 I 开头;
  • 它包含32个十六进制字符;

一种示例格式可以是:

I201611160832aa0000000000786176696572

它以日期和时间 (YYYYMMDDHHMM) 开头,后跟一个分隔符,然后是提交者的 hexa 格式名称(这里我使用 ascii,但可以使用另一种格式),用 00 填充。


推荐阅读