6

機能ブランチを「元に戻す」場合、どのようなオプションがありますか? 完成した新しい機能を追加してsupercool-feature(開発にマージし、機能ブランチを削除)、リリースに移行するとします。しかし、ユーザーはこれを本当に嫌いますsupercool-feature。開発とリリースに既にマージされているこの機能を元に戻す/巻き戻す/元に戻すにはどうすればよいですか?

バージョン管理には SourceTree を使用しています。

4

2 に答える 2

16

このコマンドを実行します

git revert -m 1 <sha1 of M>

説明

あなたの状況はおよそ次のとおりです。

A-B-----C---D-M     # master
   \         /
    X-Y---Z-        # supercool-feature

A、B、C、D は master ブランチにあり、X、Y、Z は機能ブランチにありました。git merge supercool-featureGit を実行すると、「マージ コミット」M が作成されます。このコミットには、機能ブランチからのすべてのコミットと、マージの競合を修正するための可能な修正が含まれています。そのrevertため、その 1 つをコミットすると、機能ブランチからのすべての変更が再び失われます。

于 2013-07-15T16:11:34.523 に答える
0

実はコマンドは

git revert -m 1 <sha1 of M>

メインライン1ではないX、Y、Zを含むブランチに戻るMを削除します。

于 2013-11-27T11:06:57.310 に答える