Git проблема с несанкционированным доступом
Я объединил ветку в животное. Когда я перехожу к фиксации, я получаю следующее:
Unmerged paths:
(use "git reset HEAD <file>..." to unstage)
(use "git add <file>..." to mark resolution
both deleted: ../public/images/originals/dog.ai
added by them: ../public/images/original_files/dog.ai
Короче говоря, у меня были разные имена каталогов и имена файлов в каждой ветке. В ветке есть изменения, которые я хочу.
Когда я перехожу к reset голова, это не сработает. И когда я перейду к другому действию git (удалить, проверить и т.д.), Я получаю ошибку пути не найденной.
Какие команды мне нужно выполнить?
Ответы
Ответ 1
Все, что вам нужно сделать, это:
# if the file in the right place isn't already checked in
git add <path to desired file>
# remove the "both deleted" file from the index
git rm --cached ../public/images/originals/dog.ai
git commit # commit the merge
Ответ 2
Другой способ справиться с этой ситуацией, если ваши файлы уже зарегистрированы, и ваши файлы были объединены (но не зафиксированы, поэтому конфликты слияния вставлены в файл):
git reset
Это переключится на HEAD и сообщит git, чтобы забыть любые конфликты слияния и оставить рабочий каталог как есть. Затем вы можете редактировать файлы, о которых идет речь (поиск уведомлений "Обновленный восходящий поток" ). После того, как вы столкнулись с конфликтами, вы можете запустить
git add -p
который позволит вам интерактивно выбирать изменения, которые вы хотите добавить в индекс. Как только индекс выглядит хорошо (git diff --cached
), вы можете зафиксировать, а затем
git reset --hard
чтобы уничтожить все нежелательные изменения в вашем рабочем каталоге.