git:マージ後にブランチをリベースし、マージコミットの変更を保持する方法

マーティンS。

私はこのような歴史を持っています:

A - B - M
 \    /
    C 

A、B、Mはマスターで、Cは機能ブランチにあります。

私は2つの間違いをしました:

  1. 会社のリモートがマージコミットを受け入れないことに気づいていませんでした。
  2. 単に競合を解決する以外に、Mergeコミットで多くのことを変更しました。

リベースしたかったので、A-B-C-M、C-Mはおそらく一緒に押しつぶされたように見えます。

インターネット上で、実際に私の場合非常によく似た質問を1つだけ見つけました。唯一の応答は、「マージは問題ありません」でした。

私はまだリベースの構文に慣れて100%ではないんだ認めるが、任意の組み合わせは、私がの有無にかかわらず、リベースにgitのを告げ-p、および/または-i、それが(NOOP)をリベースするものはないと述べたか、それが働いていないと述べたいずれか。

論理的な選択のように思われたのは、Cとを踏むrebase -ip masterことですが、それは私が期待したことを完全には実行しませんでした。

ジャノス

この歴史を考えると:

A - B - M
  \    /
    C 

Mで、Bにソフトリセットしてコミットすると、最終的には次のA - B - M'ようになります。

git checkout M
git reset B
git commit

ブランチの内容は同じままで、これらのコマンドはいずれも変更されずC、履歴から削除されるだけで、まっすぐなブランチのように見えます。

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

gitマージ後、ブランチのコミット履歴をgitロググラフに保持します

分類Dev

Git最近のマージコミットを元に戻し、リベースに変更する方法

分類Dev

git-段階的な変更を別のブランチにコミットしてマージする

分類Dev

GIT:分割コミットを別のブランチにマージする方法

分類Dev

複数のマージブランチをGit-マスターブランチへのマージ中に複数のコミットを回避する方法

分類Dev

Git:マスターをブランチにマージするためのコミットメッセージ

分類Dev

ブランチからの最後のコミットのみをマスターにマージします

分類Dev

git:コミットを別のベースに再固定する方法(リベースなし、マージなし!)

分類Dev

Git:コミットせずに新しいブランチを作成すると、マスターへの変更もブランチを変更します

分類Dev

インタラクティブなリベース後にマージコミットを元に戻す方法

分類Dev

Git:コミットを別のブランチにマージする

分類Dev

失敗したマージ後のgitブランチの再構築(マージコミットを尊重)

分類Dev

ブランチに加えられた変更を見つけるために、別のブランチにマージされた特定のgitブランチの最後のコミットをどのように伝えるのですか?

分類Dev

マージ競合クラスターを引き起こさずに、サブブランチを今後のコミットとマージで別の開発ブランチとしてブランチする方法****?

分類Dev

GIT:マージを元に戻した後にブランチから変更をプルする方法

分類Dev

開発ブランチをマスターにマージ/リベースするGitコマンド

分類Dev

Gitは、開発ブランチの最後のコミットのみをマージします

分類Dev

戻されたコミットを含むマスターをブランチにマージする方法

分類Dev

マスターにマージするとき、Gitはブランチの変更を無視します

分類Dev

コマンドを使用してジェリットの変更をリベースする方法は?

分類Dev

リモート(マスター)ブランチを特定のコミットにリベースする

分類Dev

ローカルに存在する重要なマージコミットを使用して、アップストリームの変更にリベースします

分類Dev

git:ブランチをマージしますが、コミット履歴は保持します

分類Dev

共通ベースとして指定されたコミットのペアに基づいてGitブランチをマージします

分類Dev

TeamCityのブランチにマージしてコミットする方法

分類Dev

元のブランチでコミットを押しつぶした後にリベースする方法は?

分類Dev

Gitマージ(またはリベース)ブランチ、ただし特定のコミットのみ

分類Dev

ブランチAのPARTコミットをブランチBにegitでマージする方法は?

分類Dev

gitで機能ブランチをリベースした後にマージする

Related 関連記事

  1. 1

    gitマージ後、ブランチのコミット履歴をgitロググラフに保持します

  2. 2

    Git最近のマージコミットを元に戻し、リベースに変更する方法

  3. 3

    git-段階的な変更を別のブランチにコミットしてマージする

  4. 4

    GIT:分割コミットを別のブランチにマージする方法

  5. 5

    複数のマージブランチをGit-マスターブランチへのマージ中に複数のコミットを回避する方法

  6. 6

    Git:マスターをブランチにマージするためのコミットメッセージ

  7. 7

    ブランチからの最後のコミットのみをマスターにマージします

  8. 8

    git:コミットを別のベースに再固定する方法(リベースなし、マージなし!)

  9. 9

    Git:コミットせずに新しいブランチを作成すると、マスターへの変更もブランチを変更します

  10. 10

    インタラクティブなリベース後にマージコミットを元に戻す方法

  11. 11

    Git:コミットを別のブランチにマージする

  12. 12

    失敗したマージ後のgitブランチの再構築(マージコミットを尊重)

  13. 13

    ブランチに加えられた変更を見つけるために、別のブランチにマージされた特定のgitブランチの最後のコミットをどのように伝えるのですか?

  14. 14

    マージ競合クラスターを引き起こさずに、サブブランチを今後のコミットとマージで別の開発ブランチとしてブランチする方法****?

  15. 15

    GIT:マージを元に戻した後にブランチから変更をプルする方法

  16. 16

    開発ブランチをマスターにマージ/リベースするGitコマンド

  17. 17

    Gitは、開発ブランチの最後のコミットのみをマージします

  18. 18

    戻されたコミットを含むマスターをブランチにマージする方法

  19. 19

    マスターにマージするとき、Gitはブランチの変更を無視します

  20. 20

    コマンドを使用してジェリットの変更をリベースする方法は?

  21. 21

    リモート(マスター)ブランチを特定のコミットにリベースする

  22. 22

    ローカルに存在する重要なマージコミットを使用して、アップストリームの変更にリベースします

  23. 23

    git:ブランチをマージしますが、コミット履歴は保持します

  24. 24

    共通ベースとして指定されたコミットのペアに基づいてGitブランチをマージします

  25. 25

    TeamCityのブランチにマージしてコミットする方法

  26. 26

    元のブランチでコミットを押しつぶした後にリベースする方法は?

  27. 27

    Gitマージ(またはリベース)ブランチ、ただし特定のコミットのみ

  28. 28

    ブランチAのPARTコミットをブランチBにegitでマージする方法は?

  29. 29

    gitで機能ブランチをリベースした後にマージする

ホットタグ

アーカイブ