zhdoon
@zhdoon
Директор музея

Как отменить мерж файлов и как разрешать конфликты руками?

Всем привет.

Пытаюсь разобраться с git. Предыстория примерно такая.

Получаю от клиента полный бэкап сайта в виде архива. Разворачиваю данный бэкап на своей площадке, запускаю сайт все ок.

После этого клиент дает доступ к приватному репозиторию на гитхабе. В одной из веток ветке лежит не весь код сайта, а только та часть, которая подлежит изменениям (выбросили оттуда ядро, грубо говоря).

Я делаю так в папке с развернутым сайтом на моей площадке:
$ init git
$ git remote add clientrepo https://username:password@github.com/Company/repo.git
$ git fetch
$ git checkout -t clientrepo/vetka
$ git status
$ git add .
$ git commit -m "start"

Потом вношу какие-то изменения в код.

$ git commit -m "finish"

И перед тем как пушить в удаленный репозиторий запрашиваю оттуда текущую версию, чтобы разрешить конфликты.

$ git pull clientrepo vetka
$ git merge clientrepo/vetka

Вижу в консоли ошибку:
fatal: 'merge' is not possible because you have unmerged files.

Ввожу команду:
$ git status

Вижу в консоли секцию с записями new file: и секцию с both added:

В php-файлах проекта из секции both added: появились "комменты" вида, сайт, естественно сыпет ошибками из-за этих "комментов":

<<<<<<< HEAD
code_one
=======
code_two
>>>>>>> ae235f459f0cc2d9108f051c5832b7d961f23127

Вопрос 1.
Если я захочу отменить слияние и вернуть все файлы проекта к состоянию, в котором они находились в момент создания коммита "finish", то какими командами я должен воспользоваться?

Вопрос 2.
Как разрешить имеющиеся конфликты? Какие действия и в какой последовательности я должен выполнить? Желательно инструкцию типа: заходим во все файлы из секции added both, в каждом файле затираем code_1, оставляем code_2, потом делаем ..., потом делаем ...
  • Вопрос задан
  • 1394 просмотра
Пригласить эксперта
Ответы на вопрос 1
zagayevskiy
@zagayevskiy
Android developer at Yandex
Незачем пересказывать https://git-scm.com/book/ru/v2
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы