2016-04-19 25 views
0
<<<<<<< HEAD 
asd 
||||||| merged common ancestors 
=======g 
test 
>>>>>>> b0acaed6842e69ac407029e0f580b54b64258980 
<<<<<<< HEAD 


test312 
||||||| merged common ancestors 
======= 

asdfdfsfdsafdadfasd 
>>>>>>> 6d92ab6b31d03c5c13803eca25762b4fb273a0c5 

git競合のサンプルシナリオ。 <<<<<<< HEADおよび>>>>>>> 6d92ab6b31d03c5c13803eca25762b4fb273a0c5のファイルのクリーニングまたは修正方法。git競合ファイルの解決方法

+0

WQあなたは( 'ours'、' their'など)を使用したい変更を選択し、マージ戦略を使用することができます。 – CodeWizard

答えて

0

これらは、diff3の出力です(diff2ではなく)。
merge.conflictstyleを使用して、表示方法を制御できます。 merge.conflictStyle

は競合兄貴がマージすると、ツリーのファイルを作業に書き込まれているスタイルを指定します。

デフォルトは< < < < < < <競合マーカーを示すmerge、である、次に片側、=======マーカー、他方の側によって行われた変更によって行われた変更>> >>>>>マーカー。

代替スタイルdiff3は、|||||||マーカーと元のテキストの前に=======マーカー。

ファイルを編集して、コミットしてコミットするだけで済みます。

vi <file name> 

# Fix the error in the file 
# add the file and commit it 
git add . 

# no need to supply message, it will have the Merge message automatically 
git commit 
0

マーカは、マージ競合がファイル内のどこにあるかを示します。マージのコンフリクトをエディタで手動で解決し、マージマーカーの行を削除すると、< < < < < <となります。

ファイルを保存したら、テストを実行してを実行し、変更を適用します。

追加のマージマーカーについても、常にレポをgrepすることをお勧めします。

+0

それで、それを自動的に修正するショートカットコマンドはありませんか? – Marvz73

+0

いいえ。ファイルに2つの相反する変更がありますので、信頼できる方法がないか、サードパーティのマージツールがあなたが保持したいものを決めることができません。 –

0

競合を手動で削除する必要があります。私の知る限り、自動化された方法はありません。
コマンドプロンプトからコマンドgit commit -i filenameを使用します。
その後、ESC:次に
git push origin <branchname>

関連する問題