Подтвердить что ты не робот

"Fatal: вишня-pick failed" с Git

Я работал над веткой X. Я сделал фиксацию и подтолкнул ее.

Затем я захотел cherry-pick на ветвь Y. Но из-за каких-то несвязанных файлов я получил следующее сообщение:

error: 'cherry-pick' is not possible because you have unmerged files.
hint: Fix them up in the work tree,
hint: and then use 'git add/rm <file>' as
hint: appropriate to mark resolution and make a commit,
hint: or use 'git commit -a'.
fatal: cherry-pick failed

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

В настоящее время я не могу удалить ветку, поскольку это моя рабочая ветка. Я не могу checkout любую другую ветвь. Я получаю следующую ошибку при попытке изменить ветвь.

mod/assign/locallib.php: needs merge
error: you need to resolve your current index first

Мне просто нужно удалить ветвь Y, не теряя ничего на ветке X.

РЕДАКТИРОВАТЬ № 1

Я редактировал файл mod/assign/locallib.php

Выполняя git status, я получаю:

# On branch MDL-38267_24
# Unmerged paths:
#   (use "git add/rm <file>..." as appropriate to mark resolution)
#
#   both modified:      mod/assign/locallib.php
#

Какой файл следует добавить в git add ..?

4b9b3361

Ответ 1

Поскольку вы уже отредактировали файл конфликта, вам просто нужно

git add mod/assign/locallib.php

то

git cherry-pick --continue

Ответ 2

Вы попытались выполнить слияние (через git merge или git pull) и иметь файлы, у которых есть конфликты, которые не разрешены. Если вы выполните git status, вы, скорее всего, увидите, что файл указан как "измененный обоими". Вы должны позаботиться об этом, прежде чем делать что-либо еще.

Сделайте git mergetool, и он будет генерировать файлы по одному. Исправьте файл, чтобы разрешить конфликты, и затем вы сможете продолжить.