ホームページ  >  に質問  >  本文

git merge 後は、マージと競合の間で競合は発生せず、直接置き換えられます。

1. 正式環境にはウェアハウスがありますが、便宜上、当時の同僚が直接パッケージ化してテスト環境で開発しており、開発が完了した現在、この新規開発部分はバージョンには含まれていません。図書館。結合方法がわかりません。

2. ここで、dev ブランチに基づいて新しいブランチを作成し、新しいブランチ配下のファイルを、これまでリポジトリに含まれていなかったファイルに直接置き換えて、コミットを追加します。

3. dev ブランチに基づいて dev2 ブランチを作成し、dev2 に切り替え、新しいブランチをマージしたところ、マージ プロセス中にファイルがマージまたは競合していないことがわかりましたが、dev2 の下のファイルは削除されました。新しいブランチの下にファイルを追加します。

申し訳ありませんが、同じような問題に遭遇した場合は、アドバイスをお願いします。ありがとう!

伊谢尔伦伊谢尔伦2647日前1028

全員に返信(3)返信します

  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-22 11:54:46

    質問が2つあります。

    1. 「新規開発部品」とはどの部品を指しますか?

    2. dev2を何に変える必要がありますか?

    返事
    0
  • 曾经蜡笔没有小新

    曾经蜡笔没有小新2017-06-22 11:54:46

    git Cherry-pick コマンドを試して、コミットをブランチにマージできます。

    返事
    0
  • 过去多啦不再A梦

    过去多啦不再A梦2017-06-22 11:54:46

    git merge 実際には、現在の dev2 ブランチの最後の作業ノード、新しいブランチの最後のノード、およびそれらの共通の親ノードが 3 方向の方法でマージされます。共通のノードと比較すると、新しいブランチはすべてを変更するのと同じです。ファイルは削除されますが、dev2 ブランチには変更がありません。そのため、git は自動的にマージして dev2 上のファイルを置き換えることを選択します

    あなたの言ったことによると、あなたの同僚はいくつかの機能を調整しただけであるはずです。

    を使用して2つのブランチを手動でマージすることを検討してくださいgit difftool

    返事
    0
  • キャンセル返事