機能ブランチのリベース後にGitプッシュが拒否されました
OK、これは単純なgitシナリオだと思いましたが、何が欠けていますか? 私はmaster枝と枝を持っていfeatureます。私はいくつかの作業master、いくつかの作業feature、そしていくつかの作業を行いmasterます。私はこのようなものになります(辞書式順序はコミットの順序を意味します): A--B--C------F--G (master) \ D--E (feature) 私がする何の問題もないgit push origin master遠隔保つためにmasterもして、更新をgit push origin feature(ときにfeature私のためのリモートバックアップを維持するために)feature仕事を。今まで、私たちは元気です。 しかし今、私はマスターfeatureのF--Gコミットの上にリベースしたいので、私git checkout featureとgit rebase master。まだいい。今私たちは持っています: A--B--C------F--G (master) \ D'--E' (feature) 問題:バックアップに私はしたい瞬間新しいリベースfeatureで分枝状git push origin feature、プッシュが拒否されたツリーがリベースによって変化しているため。これはでのみ解決できgit push --force origin featureます。 私は--forceそれが必要かどうか確信せずに使用することを嫌います。それで、私はそれが必要ですか?リベースは必ずしも次pushがフルであることを意味し--forceますか? この機能ブランチは他の開発者と共有されていないので、強制プッシュで事実上問題はありません。データを失うことはありません。質問はより概念的です。