← Все вопросы
Появился merge-конфликт со стрелками <<<<<<< и =======, что это и как читать?
13
Сделал merge, git ругнулся на конфликт. Открываю файл — а там какая-то каша:
<<<<<<< HEAD
print("привет")
=======
print("hello")
>>>>>>> feature
Что означают эти строки и что мне с этим делать?
4 ответа
21
✓ Принятый ответ — помог автору
Это маркеры конфликта. Расшифровка:
- между
<<<<<<< HEADи=======— твоя версия (та ветка, в которую вливаешь); - между
=======и>>>>>>> feature— версия из вливаемой ветки.
Твоя задача — вручную оставить нужный код (один вариант, другой, или оба вперемешку), удалить все три строки-маркера, сохранить файл, потом git add файл и git commit. Git сам конфликт не решит — он показывает оба варианта и ждёт твоего решения.
Алена Трофлянина Главное не забыть стереть сами `<<<`, `===`, `>>>` — иначе они уедут в коммит как обычный текст. · 10 месяцев назад
8
Сверху — твоё (HEAD), снизу — чужое. Выбираешь правильное, маркеры стираешь, git add + git commit.
6
Если запутался и хочешь всё отменить и начать заново — git merge --abort вернёт состояние до merge.
3
Сверху твоё, снизу чужое.
Ваш ответ
Войдите, чтобы ответить на вопрос.