問題タブ [git-merge-conflict]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
git - 競合を無視して、ステージ/インデックスのみをコミットします
私には大きなコミットがあり、厳選しました。pick は競合の合計を作成するようになりました (作業ツリー内)。ここで、すべての競合を解決することなく、ステージングされた (正常にマージされた) すべての変更をコミットしたいと思います。
単純に、コミットはステージでしか機能しないといつも思っていましたが、試してみると、競合を解決しないとコミットできないというメッセージが表示されます。
誰かが私に何が起こっているのか、どうすれば修正できるのか説明してもらえますか?
git - Git: 競合の解決を求めるのではなく、Git が祖先を検出できないのはなぜですか?
Master ブランチと Work ブランチがあります。私は Work ブランチで作業しており、チームは Master ブランチを更新します。
作業ブランチ: 1000 <--- 1001 <--- 1002
マスターブランチ: 1000
Work ブランチを Master ブランチにマージし、作業を進めます。
マスターブランチ: 1000 <--- 1001 <--- 1002 <--- 1003 <--- 1004
Work ブランチは、Master ブランチを Work ブランチにマージしたいと考えています。1003 と 1004 のコミットでファイル a.cpp に何らかの変更があるとします。
Work ブランチの a.cpp は、Master ブランチのコミット 1004 の最新バージョンの a.cpp で自動的に更新されると思います。
しかし、gitはそうではありません! a.cpp の競合を解決するよう求めます。
両方追加: a.cpp
しかし、Work ブランチの a.cpp と Master ブランチの a.cpp を比較しました。Work ブランチの a.cpp は、Master ブランチ (コミット 1002) の a.cpp の祖先の 1 つです。
その理由と簡単に解決できる方法を教えてください。
[更新 1] 申し訳ありませんが、状況を単純化しすぎていると思います。実際、Work ブランチがマスター ブランチにマージされる前に、いくつかのコミットがマスター ブランチにありました。
作業ブランチ: 1000 <--- 1001 <--- 1002
マスターブランチは次のようになります: 1000 <-- 2001 <-- 2002
Work ブランチが Master ブランチにマージされた後、
マスター ブランチ: 1000 <--- マージ (1002、2002) <--- 2003 <--- 2004
ここで、Master ブランチを Work ブランチにマージして戻します。このマージには競合がないと仮定します。記録の順序は次のようになっているため: a.cpp のマスター コード、a.cpp のワーク コード、a.cpp のマスター コード、ワークはマスターから a.cpp を取得します。
[更新 2] 競合の警告が表示されることを理解しました。Git は、ファイルの記録順序に従いません。コミットの年代順にのみ従います。
git - Git の競合ですが、1 行も表示されません
GIT で競合が発生し、コードをマージしようとしましたが、競合している行が表示されません。私のファイルとメインブランチのソースファイルは行ごとに等しい..
git - SmartGit を使用して git ファイルの競合を解決する: 私たちのものと彼らのもの
ここで問題が発生しましたが、理由がわかりません。おそらく何か間違ったことをしたのでしょう。私は同じファイルで作業しており、他の開発者も同じファイルで作業していました。彼は、ファイルがリポジトリにプッシュされたと言いました。変更をプルする前に、コミットを行ったので、変更が保存され、他の開発者の変更とマージされましたが、ファイルが競合を引き起こしていることに驚きました。右クリックを開くと=>競合を解決すると、次のウィンドウが表示されます。
そこにある各オプションは何を意味しますか?どちらがより安全で、両方の変更を保存しますか? (開発者と鉱山)
開くConflict solver
と、次のようなものが得られます。
しかし、繰り返しますが、両方の変更を維持するためにどのように、または何をすべきかわかりません。何かアドバイスはありますか? ヘルプ?
git - Git でマージの競合が発生しないように特定のファイルにフラグを立てることは可能ですか?
マージとリベース時に、マージの競合が通常発生する「use ours」(または他のポリシー) で特定のファイルが自動的に解決されるように指定することは可能ですか?
git - Git Merge - バイナリ ファイルの競合解決
git でのマージ操作中にバイナリ ファイルの競合を解決するにはどうすればよいですか? これまでに行ったことは次のとおりです。
のバージョンを保持し、 のバージョンworking_branch
を破棄しmaster
ます。どうすればいいですか?
git - 事前に競合を通知する「git rebase --dry-run」のようなものはありますか?
リベースのスクリプトを作成しようとしていますが、リベースによって競合が発生するかどうかに応じて、スクリプトは異なるパスをたどります。
リベースを実行する前に、リベースによって競合が発生するかどうかを判断する方法はありますか?