Этот вопрос проверяет знание работы с Git
Есть два основных способа:
git cherry-pick — копирует конкретный коммит в текущую ветку.
Интерактивный rebase (git rebase -i) — позволяет переупорядочивать или переносить несколько коммитов.
Пример через cherry-pick:
git checkout target-branch # Переключаемся на ветку, куда переносим
git cherry-pick abc123 # abc123 — хеш коммита, который нужно перенестиИспользование git cherry-pick
Этот метод подходит, если нужно перенести один или несколько конкретных коммитов.
Шаги:
Узнайте хеш коммита, который нужно перенести:
git log source-branch --onelineПример вывода:
abc123 Добавил новую функцию
def456 Исправил багПереключитесь на ветку, куда переносите коммит:
git checkout target-branchВыполните cherry-pick:
git cherry-pick abc123Что произойдет:
Git применит изменения из коммита abc123 в target-branch как новый коммит (с другим хешем).
Если возникли конфликты:
Решите их вручную, затем выполните:
git add .
git cherry-pick --continueИнтерактивный rebase (git rebase -i)
Подходит для переноса нескольких коммитов или изменения их порядка.
Шаги:
Переключитесь на ветку-источник:
git checkout source-branchЗапустите интерактивный rebase:
git rebase -i target-branchОткроется редактор со списком коммитов.
Оставьте только нужные коммиты (остальные закомментируйте, поставив # в начале строки).
Сохраните файл и закройте редактор.
Переключитесь на целевую ветку и выполните слияние:
git checkout target-branch
git merge source-branchАльтернатива: git merge с выбором коммитов
Если нужно перенести все коммиты из одной ветки в другую:
git checkout target-branch
git merge source-branchcherry-pick создает новый коммит (даже если изменения идентичны).
Rebase переписывает историю — не используйте его для опубликованных веток.
Если коммит зависит от других изменений, возможны конфликты.
Пример конфликта при cherry-pick:
Если в коммите abc123 изменен файл app.js, но в target-branch этот файл уже изменен, Git запросит ручное разрешение конфликта.
Frontend developer
Ментор по Frontend
Полное сопровождение до оффера — без дорогих курсов, с оплатой после трудоустройства
Записаться на консультацию