70

他の寄稿者が利用できるようにし、マスターと常に最新の状態に保つ必要があるブランチがあります。

残念ながら、「git rebase」を実行してからプッシュしようとすると、「非早送り」メッセージが表示され、プッシュが中止されます。ここでプッシュする唯一の方法は、-forceを使用することです。それは、私のブランチが公開され、他の人がそれに取り組んでいる場合、リベースする代わりに「gitmerge」を使用する必要があることを意味しますか?

4

2 に答える 2

2

いいえ、リベースは公開リポジトリでは完全に合法であり、履歴を流暢に保つためにも望ましい場合があります。リモートで公開されたコミットの履歴を書き換えるために rebase を使用してはならないことに注意してください。つまり、リベースは、まだ公開していないローカルのコミットにのみ適用できます。リベースを使用して、フェッチ時にコミットをそれらの上に配置し、その後、おそらくそこで調整します。このようなメッセージを受け取るもう 1 つの理由は、プッシュしているブランチが更新され、同期する必要があることです。つまり、フェッチしたものの上にコミットをフェッチしてリベースします。

于 2013-01-11T10:30:24.500 に答える