n1ro°
RU

Компьютеры · Инструкция

Как восстановить stash в новой ветке Git

Если ветка ушла далеко вперёд и `stash apply` конфликтует, Git может создать ветку от commit, на котором stash был сдела

Редакция N1RO · Проверено

Короткий ответ

Выполните `git stash list`, выберите запись и запустите `git stash branch <новая-ветка> stash@{N}`. Git создаст ветку от commit, где stash был сделан, применит изменения и при успехе удалит эту stash-запись.

Что делать

  1. Найдите stash: Запустите `git stash list` и найдите нужную запись.
  2. Просмотрите её: Проверьте `git stash show -p stash@{0}`.
  3. Создайте ветку: Выполните `git stash branch recover-work stash@{0}`.
  4. Проверьте результат: Убедитесь, что изменения применены, затем выполните тесты и `git status`.

Проверка результата

  • Новая ветка создана от исходной базы stash
  • После успешного применения выбранная stash-запись исчезла из `git stash list`

Важно

Если применение завершится конфликтом/ошибкой, stash не должен считаться успешно перенесённым. Не удаляйте исходную запись вручную, пока не проверите рабочее дерево.

Что учитывать

Если применение завершится конфликтом/ошибкой, stash не должен считаться успешно перенесённым. Не удаляйте исходную запись вручную, пока не проверите рабочее дерево.

Источники и проверка

Инструкция составлена редакцией N1RO на 2026-09-18. Перед действием сверьте актуальные условия на официальном сайте сервиса или производителя.