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

Git восстановить один файл, который был удален во время слияния

Я сейчас в филиале 'foo'. Я просто запустил git merge master. Проблема только в том, что в foo есть определенный файл, который я хотел сохранить. Есть ли способ вернуть его, но сохранить все другие изменения от мастера слияния?

4b9b3361

Ответ 1

Попробуйте что-то вроде этого:

git checkout HEAD -- filename

Это приведет к откату вашего файла. Если вы хотите вернуться к определенной фиксации, вы можете использовать хеш фиксации или добавить ^ N в конец ключевого слова HEAD, например. HEAD^2.

Ответ 2

Я не уверен, как исправить проблему из текущей ситуации, но вы можете посмотреть git merge -s ours. Документы здесь.

Рабочий процесс будет

  • Создать ветку a из master
  • Сделайте собственное изменение в ветке a, которое вы не захотите объединить обратно в master
  • Проверьте master и git merge -s ours a
  • Отъезд a и продолжить работу и совершить.

Теперь, когда вы сливаетесь с мастером, пользовательские изменения на шаге 2 будут проигнорированы.