私はマスターと開発ブランチを持っています。フィーチャーと修正プログラムのブランチはマージされて開発され、時には開発がマージされてマスターになります。今私は、マスターブランチから特定の修正プログラムを除外する要求があります。これは何とか可能ですか?それは比較的古い修正プログラムの枝であったので、それ以来私は開発に30以上のマージを持っています。または、私はちょうど新しいブランチを作成し、手動で変更を元に戻し、それをマスターにマージする必要がありますか?特定のマージされたブランチのコミットをGitのマスターブランチから除外する方法は?
0
A
答えて
1
古いhotfix
がマージされたコミットをdevelop
ブランチに戻すだけで済みます。
master
ブランチで除外したい古い修正プログラムをコミットF
からコミットするコミットがG
であると仮定します。
master
枝に古い
hotfix
を除外するための方法下記の使用を使用し
A---B------------------I---… master
\ /
C---D---E--…--H---… develop
\ / \
F--…--G J--… hotfix/feature
:まず
、マージを見つけるには、古いhotfix
がdevelop
ブランチにマージすることをコミットします。マージコミットとしてH
が開発ブランチにあります。
その後、あなたのmaster
ブランチに変更を元に戻す:
git checkout master
git revert -m 1 <commit id for H>
注:マージされた変更を元に戻す際に競合がある場合は、あなたが変更と競合ファイルを保存し、あなたgit add .
とgit revert --continue
を終了することができます元に戻す。
関連する問題
- 1. 特定の順序でブランチからコミットをマージする方法
- 2. gitブランチがさらにコミット/マージするのを防ぐ方法
- 3. Git - マージされたブランチで新しいコミット - これらの新しいコミットをマージする方法?
- 4. Gitログ:特定のマージからのコミットを除く
- 5. ブランチ後にマスターからの特定のコードが削除されたときにGitブランチとマージする
- 6. ブレイクリニアgitは2つのマージされたブランチにコミットします
- 7. 特定のコミットからブランチを強制的にマージする
- 8. gitのブランチに最新のマージをコミットする方法
- 9. Gitブランチをマスターブランチにコピーする方法
- 10. 特定のコミットからgitブランチを追跡する
- 11. マスターから別のブランチにコミットを除外する方法
- 12. Git - 機能ブランチをマージする方法はありますが、コミットをいくつか除外しますか?
- 13. ローカルでコミットされたブランチをgitでリカバリする方法は?
- 14. Squash GITでのマージ後のブランチのコミット
- 15. 特定のブランチ上の特定のプッシュされたコミットからのGit変更コード
- 16. 既にプッシュされているマージされたブランチから特定のコミットを元に戻す
- 17. マスターとマージされたブランチでGitスカッシュがコミットします
- 18. 私のブランチからスパンしたgitブランチをマージするには?
- 19. Gitのマージ - マージされたブランチはどうなりますか?
- 20. マスターブランチとマージせずにGitブランチからコードをテストするには?
- 21. gitブランチをマスターブランチにする
- 22. マージ後のGitブランチとコミット履歴
- 23. ブランチから別のブランチに1つのコミットをマージする方法
- 24. 特定のGitをマスターブランチにコピーする
- 25. Git - マスターブランチを別のブランチにマージすることを取り消しました
- 26. Git:ブランチからマスターへのリベースとスカッシュのコミット方法は?
- 27. gitハウスキーピング - マージされたブランチを削除する
- 28. Git:コミットを逆マージする方法は?
- 29. 特定のブランチをgitとマージするには?
- 30. 特定のコミットを別のブランチにコピーする方法は?
あなたが復帰シナリオで暮らすことができるなら、間違いなくそれを行うことができます。発生しなかったかのように元のコミットを取り除くことは確かに実行可能ですが、単に修正プログラムによって導入された変更を元に戻すよりもはるかに多くの作業になります。個人的に私は、修正プログラムのブランチ(またはブランチを削除した場合は最後のコミット)をチェックアウトして元に戻し、その新しいコミットを開発とマスターの両方にマージします。 –
これは奇妙な要求です。あなたが永遠に(1人のユーザにとって一度だけではなく)それを元に戻したいのであれば、新しいコミットを変更して手動で変更を戻すだけです。これらのファイルの単純な差分/チェックアウトよりも少数のファイルに含まれている場合は、その前に修正プログラムが必要な場合があります。私はあなたがなぜこの要求を受け入れるのかを詳しく述べるべきだと思います。おそらく答えは他の場所です。 – kabanus