コミュニティrebasedブランチを私たちのgerritにプッシュする際に助けが必要です。上流のマスターを持つGerrit rebaseローカルブランチ
私たちは、コミュニティプロジェクトからフォークアウトされたプロジェクトを持っています。以前はゲリットを使わなかったので、リベースとプッシュは簡単でした。しかし、絵の中のゲリットで、物事は私のために混乱しています。
フォレストされたリリースブランチを上流リリースブランチでリベースする必要があります。ここで
が、私はこの後、今
git checkout -b local_zoomba1 remotes/origin/zoomba1
git remote add upstream <upstream git repo>
git fetch upstream
git rebase remotes/upstream/stable/zoomba1
までやったことで、私は解決し、いくつかの競合がありました。空が
git commit --allow-empty -m "Rebased with community zoomba1 release"
をリベースマークするためにコミット追加今の楽しみは始まった私はgitの見直しをしたときに:)
は、それはコミッタメールIDは、私のIDと一致しないというエラーが発生しました。だから私は「フォージコミッタ」と「フォージ著者」に自分自身に許可を与えた
は、今ではすべてのコミットを示したが、最終的には文句:
You are about to submit multiple commits. This is expected if you are
submitting a commit that is dependent on one or more in-review
commits. Otherwise you should consider squashing your changes
into one commit before submitting.
The outstanding commits are:
...
...
Type 'yes' to confirm, other to cancel: yes
remote: Processing changes: refs: 1, done
remote: ERROR: missing Change-Id in commit message footer
remote:
remote: Hint: To automatically insert Change-Id, install the hook:
...
remote: And then amend the commit:
remote: git commit --amend
remote:
勿論変更-IDのなしの多くのコミットが(あります「マージ」コミットであるもの)。私は戻っていくつかのランダムな変更IDをそれらに割り当てることはできません。私はここでどのように進めるべきですか?
また、コミュニティから来る未知の変更IDに遭遇したときにゲリットがどのように反応するかを理解する必要がありますか?
これはすべて1つの大きなコミットになるのでしょうか、これは方法ではありませんか?
gerritをバイパスしてgitに直接プッシュすることはできますか?
はい、私はそれらを見直すことはしません。私はあなたが言及した許可を試すことができます。しかし、/ heads/for/branchのことは理解できませんでした。また、プッシュコマンドはどのように見えますか? – mittal
さて、私は "refs/heads/*"の両方の許可を得ました。しかし、まだ "refs/for/BRANCH"ではなく、 "refs/heads/BRANCH"の意味が分かりません。これはうまく動作しないでしょうか?git push origin local_zoomba1:zoomba1' – mittal
これを使って--dry-runを試みました。それは失敗します:('#git push --dry-origin origin local_zoomba1:zoomba1 [拒否] local_zoomba1 - > zoomba1(早送りではない) エラー:いくつかの参照をプッシュするのに失敗しました... ヒント:押し込まれた枝の先端がリモートの背後にあるために拒否されました。 ヒント:相手。このブランチをチェックし、リモートの変更をマージする ヒント:(例えば 'git pull')をもう一度押す。 ヒント:詳しくは、 'git push --help'の 'fast-forwardsに関する注意'を参照してください。 – mittal