/ telegram

Cherry pick

В программировании не обойтись без системы контроля версий. Сейчас самая популярная из них git. Небольшая заметка по использованию. Многие забывают о том, что можно не только выполнять merge и rebase, но и управлять отдельными коммитами.

Давайте опишу простую ситуацию, у вас есть ветка, в которой ведётся разработка (например dev или master, в зависимости от branching strategy), и вдруг вы понимает, что нужно выпустить быстрый фикс, в котором есть несколько коммитов (включающие нужные фиксы), но при этом в вашей ветке уже много других коммитов. По факту нужно просто создать ветку (например от последнего релиза) и добавить туда несколько определённых коммитов.

Например добавить коммит D в из master ветки в fix.

  Z -- D'  (fix)
 /      
A -- C -- D -- E (master)

В git для этого есть специальный функционал, всё просто

Переключаемся в ветку, куда нужно добавить коммит и

git cherry-pick <хеш коммита>

Всё просто, выбран один коммит и добавлен в другую ветку. Если возникнет подобная ситуация, не нужно копировать код (да-да, встречал такое).

https://git-scm.com/docs/git-cherry-pick
https://stackoverflow.com/questions/9339429/what-does-cherry-picking-a-commit-with-git-mean
https://illustrated-git.readthedocs.io/en/latest/

Читать в телеграм: https://t.me/tj4me/30

Cherry pick
Share this

Subscribe to Yet another blog