Openstack:使用git rebase和merge

时间:2016-09-19 21:44:09

标签: python git openstack gerrit openstack-horizon

我正在修复Openstack中的错误。我做了我的更改,因为这是一个文档任务,我确实按照惯例运行测试。我将更改提交给Gerrit。当我正在处理另一个bug时,它从审阅者那里回来了。

我切换了分支并处理了较旧的bug。当我做git review时,它引发了以下错误。

 You are about to submit multiple commits. This is expected if you are

提交依赖于一个或多个审核的提交 提交。否则,您应该考虑将您的更改压缩为一个 在提交之前提交。

 The outstanding commits are:

 cd6bbfa (HEAD -> master) Documentation updated on panel definition using plugin files
 5503c89 Merge branch 'master' of git://git.openstack.org/openstack/horizon
 85b63be Change-ID:Ic0844d967d519f57246b8220f9a863faf85351d2 Closes-Bug:#1519386
 74cc524 Merge branch 'master' of git://git.openstack.org/openstack/horizon
 377fb7e Closes-Bug: #1597302

 Do you really want to submit the above commits?
 Type 'yes' to confirm, other to cancel: 

我以为我必须这样做,我做的是。然后格里特再次抛出这个错误。

remote: Processing changes: refs: 1, done           
To ssh://annakoppad@review.openstack.org:29418/openstack/horizon.git
 ! [remote rejected] HEAD -> refs/publish/master/bug/1597302 (you are not allowed to upload merges)
error: failed to push some refs to 'ssh://annakoppad@review.openstack.org:29418/openstack/horizon.git'

我尝试通过改造来修复它。

$ git rebase -i 377fb7e

The previous cherry-pick is now empty, possibly due to conflict resolution.
If you wish to commit it anyway, use:

git commit --allow-empty

 Otherwise, please use 'git reset' interactive rebase in progress; onto 377fb7e
Last commands done (190 commands done):
pick 15909be modify the home-page info with the developer documentation
pick 5a39ad7 Update the home-page in setup.cfg
   Next commands to do (137 remaining commands):
pick 21b723e Fix typo
pick 41e9d62 Remove embedded CSS
You are currently rebasing branch 'master' on '377fb7e'.

 nothing to commit, working directory clean
 Could not apply 5a39ad78233546a01ae3da6efd10b104231d1d8b... Update the home-page in setup.cfg

这就是我想要实现的目标。我想更改回旧的错误1597302并提交给我审核并继续处理我当前的错误1519386

感谢任何可以帮助我的人。!

1 个答案:

答案 0 :(得分:0)

错误“您不允许上传合并”是不言自明的:您无法上传代码,因为您无权推送合并提交。 Gerrit指的是提交5503c89和/或74cc524。

您需要做的第一件事是验证是否应该将这些提交推送到Gerrit或者您的存储库出现问题。您是创建这些提交还是由其他人创建?你是基于正确的提交吗?您是否遵循OpenStack开发流程(我不知道)?

如果你确实需要将这些合并提交推送到Gerrit,那么(可能)你需要请求管理员推送合并提交的权限。