Cherry-pick - это операция Git, позволяющая применить изменения одного или нескольких коммитов из одной ветки в другую.
Основные особенности:
- Позволяет выборочно переносить коммиты.
- Создает новые коммиты в целевой ветке с теми same changes as the original ones.
- Может привести к конфликтам, которые нужно resolving вручную.
Типичные сценарии использования:
- Исправление багов в релизной ветке, когда фикс был разработан в ветке разработки.
- Перенос отдельных фич или исправлений между ветками, не затрагивая остальные изменения.
Процесс:
- Найти хеш (SHA) коммита(ов), который need cherry-pick.
- Переключиться на целевую ветку.
- Выполнить команду
git cherry-pick <commit-hash>.
- При наличии conflict, resolving их и finishing the cherry-pick (
git add ., git cherry-pick --continue).
- При необходимости cherry-pick multiple коммитов, можно указать их через пробел или использовать диапазон
git cherry-pick <commit-hash-start>..<commit-hash-end>.
Пример команды:
bash