私の機能ブランチを開発ブランチにマージしたい。しかし、コミットの1つは、今私が望むコミットを元に戻しました。リバースコミットを含むリベース
* develop - merge revert PR |\ | * Revert undesired merge |/ * Merge (undesired) |\ | * commit A |/ | ... (lots of commits) | | * feature - commit B | * commit A' |/ *
git rebase -i develop
コミットA 'が表示されません。私は成功なしで様々なオプション(-p、--keep-empty、-f)を試しました。
はどのようにして個別にチェリーピッキングせずに
* feature - commit B * commit A' / * develop - merge revert PR
で終わることができますか?
(注:最新のコミットはダイアグラムの一番上にあります。また、AとA 'は同じ内容を持っています;つまり、それらは同じ内容です。同じ変更を適用してください)
最初の図は不明です。 'feature'は' '発展する'''にどのように関連していますか?あなたが描いたように、私はそれらが同じデータベース内にある独立した木だと思うでしょうが、あなたが言ったことから、私はそれを疑っています。いずれにせよ「A」は「開発」の歴史のどこにもないように見えるので、なぜ「開発」の再構築に現れるようにするオプションがあるのだろうか? –
@MarkAdelsberger私は関係を示すためにダイアグラムを改訂しました。 – TrueWill
私は決してマージを元に戻すことをお勧めします。代わりにリセットしてください。 – evolutionxbox