Вы решили конфликт в своем файле (возможно? См. Сноску), но Git не знает, закончили ли вы или нет. Вы должны указать git, что вы закончили разрешение этого конфликта. (В противном случае, если это позволит вам двигаться дальше, и вы на самом деле не решите его, вы можете найти все способы выстрелить себе в ногу.)
Насколько я знаю, способ сделать это:
git add <file> # stage the resolved version, which marks it as resolved
git reset HEAD <file> # unstage the changes, leaving the resolution just in the work tree
Кажется, должен быть способ сделать и то и другое одновременно с update-index
, но для меня это не очевидно из быстрого взгляда. (Но опять же, для реальных конфликтов слияния вы никогда не хотите помечать конфликт как разрешенный без постановки содержимого; это происходит только для тайников.)
И, как VonC говорит в своем ответе, если это случится снова, вы можете легко увидеть, какие вещи имели конфликты слияния при применении тайника с помощью git status
. Они будут перечислены в красном (если у вас есть цвет) и скажут unmerged
(или, возможно, deleted by us/them
, если это был конфликт удаления / изменения).
Сноска. Оглядываясь назад на ваш вопрос, я не могу точно сказать, исправили ли вы конфликты или нет - вы просто сказали "пока все хорошо". «Предупреждение», которое вы видели, на самом деле означает предложение немедленно разрешить конфликты. Конфликты возникали при попытке объединить изменения, которые вы потянули, с изменениями, которые вы спрятали. Вы должны разрешить этот конфликт и привести свое рабочее дерево в согласованное состояние, прежде чем сможете двигаться дальше. Разберитесь с этим, как если бы вы столкнулись с конфликтом слияний - посмотрите в файле, найдите маркеры конфликта, выясните, какой контент сохранить! (А затем посмотрите выше, как закончить.)