1

ローカル ブランチ A に次のコミットがあり、それをリモート ブランチにプッシュするとします。

commit 1
commit 2
commit 3
commit 4

ここで、リモート マスターからプルすると、コミット履歴は次のようになります。

//From branch A
commit 1
commit 2
commit 3
commit 4
//From master
commit 5
commit 6

git rebase -i と git push -f を使用してコミット 2 と 3 をスカッシュしたい場合、コミット 5 と 6 も書き換えますか? はいの場合、マスター ブランチからプルしたコミットを書き換えずに、以前のコミットを無効にする方法はありますか? 私は Git を初めて使用するので、非常に基本的なことが抜けている場合はご容赦ください。

4

2 に答える 2

0

あなたが提案したことを行うと、コミットの内容は変更されずに残りますが(リベースの競合がない場合)、親が変更されるため、ハッシュは異なります。したがって、コミットなどではなく、同じ内容の別のものになります。他の誰もそのリモートブランチを使用していないことが確実な場合、強制プッシュは問題ありません。私は個人的にはそれをしません。5656remoteremote/master

于 2017-11-18T09:55:48.710 に答える