私は次の問題を抱えています: ブランチAで作業しました。 ブランチAはマスターブランチにマージされています。Git:後で結合解除された結合ブランチでの作業
しばらくすると、顧客は、更新する必要があるため、変更を取り消すことを決めました。マスターブランチの支店Aで行われました。
だから、マスターブランチの歴史は次のようになります。
Some stuff
Some other stuff
Some stuff, where the merge of Branch A was reverted
Some other stuff
Some other stuff
Branch A was merged into master
The commit of Branch A (Branch A contains one Commit)
私は支店Aをリベースしたいので、私は何かしたい:
The commit of Branch A (From here I want to continue working)
Some stuff
Some other stuff
Some stuff, where the merge of Branch A was reverted
Some other stuff
Some other stuff
Branch A was merged into master
The commit of Branch A (Branch A contains one Commit)
私が変更したいドント注意を私の遠隔マスターの歴史、私は支店のコミットが私のマスターの最後のコミットでrebasesされる必要があります。その後、更新した支店Aを再びMasterにプッシュします。
今、私はブランチAで作業を続けたいと思いますが、まず、現在のマスターブランチでブランチAをリベースして、最新の状態にします。
問題は次のとおりです。ブランチAをマスタにリベースすると、ブランチAで行った変更が削除されたように見えます。これは、マスターブランチのマージ逆のためだと思います。ですから、Gitは、ブランチAがマスターブランチで削除されているので、ブランチAをマスターにリベースすると、削除も完了します。
私がブランチAで変更したファイルを、別のブランチに1つコピーして、マスターからチェックアウトしたかったものをコピーしたくないです。私は良い解決策、任意の推奨事項があると思いますか?
お客様は何をしましたか?彼はマージコミットを再開しましたか、それとも 'リベース 'を使って削除しましたか?最高の行動を決める答え。 –
@SebastianLenartowicz指定された履歴は、コミットの復帰があることを示しています。 –
ブランチAのリバートを元に戻すのはなぜですか? –