は、あなたは、そのブランチの歴史を書き直しました。次の手順を実行master
手段に
master: ...A -- B ---- C -- D
\
EUR-1058: E -- F
リベースEUR-1058
:ポイントを示す以下の図を考えてみましょう
- 、この場合には、バックそれは
master
を分岐、そこからコミットへの分岐をロールはB
をコミット
- のコミットを
B
の上に再生します。この場合、再生コミットC
とD
01私は
E'
のラベルが付いている
master: ...A -- B ---- C -- D
\
EUR-1058: E' -- F'
注:は最終的に、B
をコミットするので、あなたがEUR-1058
に行われたコミットを再適用、すなわちE
とF
がリベースした後、図はこのようになりますコミット
F'
は、これらが実際にはrebase中に行われた新しいコミットであることを示します。 は今、あなたはEUR-1058
にgit pull
を実行しようとしましたあなたの実際の質問に答えるために、Gitはまず、あなたのローカルブランチは、リモート(またはorigin/EUR-1058
で)上にあるもので早送りできるかどうかチェック。この場合、早送りはできませんでした。 Gitは、現時点でリモートブランチがあなたがローカルに持っているものとまったく異なっているとみなします。したがって、マージコミットを行うことでプルを完了しました。あなたはおそらく行っているはずです何
は経由リベースを完了した後、リモートにあなたのリベースEUR-1058
ブランチをプッシュ強制することです:力を使用して
git push --force EUR-1058
ブランチの歴史/ベースが変更されたため、ここでは必要です。これはマージコミットで終わったのと同じ理由です。力のプッシュ後、あなたは正常な生活を続けることができます。
注意点として、EUR-1058
の履歴を書き換えると、このブランチを共有するすべての人に問題が発生する可能性があります。だから、注意深く行うべきです。
あなたの言語は混乱しています。 Rebase "on"はあなたが何をしているのではなく、特定のものです。 'master'に' feature'をリベースしようとしていますか、あるいはその逆ですか?自動マージでは、SourceTreeのプルのデフォルトがおそらくマージされるため、マージが得られます。 –
@TimBiegeleisen EUR-1058 on master。 SourceTreeでは、タイトルに 'Rebase current changes to master'と書かれています – Ogglas