13

git revert の動作は、いまだにややこしいと思います。多大な苦痛と誤解の後、git revert は特定のコミットに戻すのではなく、特定のコミットを無効にすることを知りました 。これまでのところ、git cherry-pick は使用していません。

これら 2 つの git コマンドのそれぞれについて詳しく説明していただけますか? いつ、どのように使用するのが好きですか?

4

1 に答える 1

8

git cherry-pick「指定されたコミットをパッチに変換し、このパッチをここに適用する」のようなものです。

git revert「指定されたコミットをパッチに変換し、このパッチを(のようにpatch -R)「反転」してここに適用する」のようなものです。

どちらのコマンドも競合を引き起こす可能性があります。

Cherry-pick は、マージされていない (現在のコミットからの親リンクでは到達できない) コミットで使用されます。元に戻すは通常、マージされたコミットで使用されます。

元に戻すコミットを元に戻すには、別の元に戻すコミットを作成する必要があります ("Revert of 'Revert of ...'" のようなコミット メッセージが表示されます)。

于 2012-10-26T11:41:19.463 に答える