为什么Git会造成“空白”冲突?

时间:2017-11-20 04:07:40

标签: git merge-conflict-resolution git-merge-conflict

为什么Git会产生如下冲突:

===

>>>select * from ( select student_name, student_status,attendance_code,working_date,class_id from ( your_current_query ) d ) d2 PIVOT ( max(attendance_code) as code, min(student_status) as status for student_name in ('JAMES','PETER','MURPHY','MICA','STELLA','STEPHEN','TRACY') ) ; 之间没有任何内容时,这是如何发生冲突的?

2 个答案:

答案 0 :(得分:5)

假设你仍然有合并的冲突,并想看看发生了什么,请执行以下操作:

git config merge.conflictStyle diff3
git checkout -m path/to/conflicted/file.ext

(或者,只是:

git checkout -m --conflict=diff3 path/to/conflicted/file.ext

- 前者将所有未来冲突设置为diff3格式。)

将现在的内容与之前的内容进行比较。请注意|||||||部分的存在:

<<<<<<< mouseLabelCallbacks
const QMap<Qt::MouseButton, QString> TLabel::mMouseButtons = {
        {Qt::NoButton, QStringLiteral("NoButton")},           {Qt::LeftButton, QStringLiteral("LeftButton")},       {Qt::RightButton,     QStringLiteral("RightButton")},
        {Qt::MidButton, QStringLiteral("MidButton")},         {Qt::BackButton, QStringLiteral("BackButton")},       {Qt::ForwardButton,     QStringLiteral("ForwardButton")},
        {Qt::TaskButton, QStringLiteral("TaskButton")},       {Qt::ExtraButton4, QStringLiteral("ExtraButton4")},   {Qt::ExtraButton5,     QStringLiteral("ExtraButton5")},
        {Qt::ExtraButton6, QStringLiteral("ExtraButton6")},   {Qt::ExtraButton7, QStringLiteral("ExtraButton7")},   {Qt::ExtraButton8,     QStringLiteral("ExtraButton8")},
        {Qt::ExtraButton9, QStringLiteral("ExtraButton9")},   {Qt::ExtraButton10, QStringLiteral("ExtraButton10")}, {Qt::ExtraButton11,     QStringLiteral("ExtraButton11")},
        {Qt::ExtraButton12, QStringLiteral("ExtraButton12")}, {Qt::ExtraButton13, QStringLiteral("ExtraButton13")}, {Qt::ExtraButton14,     QStringLiteral("ExtraButton14")},
        {Qt::ExtraButton15, QStringLiteral("ExtraButton15")}, {Qt::ExtraButton16, QStringLiteral("ExtraButton16")}, {Qt::ExtraButton17,     QStringLiteral("ExtraButton17")},
        {Qt::ExtraButton18, QStringLiteral("ExtraButton18")}, {Qt::ExtraButton19, QStringLiteral("ExtraButton19")}, {Qt::ExtraButton20,     QStringLiteral("ExtraButton20")},
        {Qt::ExtraButton21, QStringLiteral("ExtraButton21")}, {Qt::ExtraButton22, QStringLiteral("ExtraButton22")}, {Qt::ExtraButton23,     QStringLiteral("ExtraButton23")},
        {Qt::ExtraButton24, QStringLiteral("ExtraButton24")},

};

||||||| merged common ancestors
(something appears here, but I cannot guess what)
=======
>>>>>>> development

这告诉您,在>>>>>>> development中,操作是删除原始的“某事”,而在<<<<<<< mouseLabelCallbacks中,操作是替换原始的“某事”与新的代码部分。

您必须选择以下哪些分辨率正确:仅删除或删除并替换。通常是后者,但有时它是前者,甚至是第三件事。

答案 1 :(得分:0)

您/其他人可能会在不同的编辑器中使用不同的file encoding进行编辑和提交。这可能导致了这个问题。

尝试找出文件编码格式并更改为正确的格式。可能有工具(可能是Notepad ++,用Notepad ++打开文件来查看编码)。然后你可以看到git所说的字母。