Bezdepbonusu7Программирование: статьи и ответы

Вопрос

Как повторно объединить файл в git?

Автор вопроса: NyambaaОтветов: 1

У меня есть 10 файлов, которые конфликтуют при объединении веток. Я разрешил все конфликты 10 файлов (долгое время). К сожалению, перед фиксацией я обнаружил, что один файл был объединен неправильно, и для этого файла нужно начать заново. :(

в Git, как пометить файл, который был объединен, как не объединенный, другими словами, как повторно объединить этот файл?

  • возможный дубликат повторить слияние только одного файла Milad Khajavi 20.07.2015

gitgit-merge

Ответы

Ответ 1 · рейтинг 53 · X-Istence

git checkout -m <filename>

Это удалит его из индекса и вернется к "конфликтующему" файлу, в котором есть все маркеры, необходимые для последующего слияния.

На справочной странице git help checkout:

-m, --merge
    When switching branches, if you have local modifications to
    one or more files that are different between the current
    branch and the branch to which you are switching, the command
    refuses to switch branches in order to preserve your
    modifications in context. However, with this option, a
    three-way merge between the current branch, your working tree
    contents, and the new branch is done, and you will be on the
    new branch.

    When a merge conflict happens, the index entries for
    conflicting paths are left unmerged, and you need to resolve
    the conflicts and mark the resolved paths with git add (or git
    rm if the merge should result in deletion of the path).

    When checking out paths from the index, this option lets you
    recreate the conflicted merge in the specified paths.

(Последнее предложение самое важное).

Вот сообщение в блоге, в котором описывается, почему это было добавлено и почему это невозможно в более старых версиях git: http://gitster.livejournal.com/43665.html

Перевод вопроса и ответов сообщества Stack Overflow, лицензия CC BY-SA. Оригинал на Stack Overflow.

Похожие материалы