2016-08-03 5 views
2

マージ競合の重要性を理解していますが、gitがそれらを検出する方法は非常に不条理です。Gitがマージ競合を不正確に検出する

私は、1行または2行で小さなコンフリクトがあると、gitはファイル全体が異なっていると信じていることに気付いています。私は頻繁に< < < < <のHEADと、本質的にファイル全体である>>>>>>>マスターを取得します。それらを比較することは、テキスト比較オンラインのような追加のソフトウェアを使用することなく悪夢です。実際には.gitignoreの違いが検出され、ファイル全体がハイライトされていましたが、両方とも< < < < < HEADと>>>>> masterはまったく同じものでした。だから何度もマージ競合を修正するときに、私は開発者をつかんで、どの行が変更されたのかを尋ねる必要があります。なぜならgitによれば、すべての行が変更されたからです。

私はプロジェクトのためにNetbeansと.gitignoreのためにNotepad ++から作業していますが、これはプロジェクト管理を非常に困難にしています。

修正する必要がある設定や書式がありますか?

+0

誰かの編集者が書式を変更している可能性はありますか?たとえば、行末が変更されていますか? – Gibstick

+0

同じエディタを使用しているので、私はそれをやっているとは思えません。同じバージョン。だからgit自体がそれを行っていない限り。 。 。 –

+5

あなたの行末について教えてください。 –

答えて

4
git merge -Xignore-space-change 

マージ中にスペースに関連するすべての競合を無視できるようにする必要があります。

実際にコミットする前に結果を確認できるように、

--no-commit 

フラグでそれをテストする必要があり安全です。

+0

私はこれを試してみます。 –

関連する問題