🍒 cherry-pick 🍒

Вы наверняка слышали про такую команду в гите, но никогда не использовали. Она символизирует то, как вы с дерева аккуратненько срываете вишенки одну за одной

В чем суть и зачем она нужна?

Допустим, есть ветка dev. У вас появилась новая задача. Вы создаете feature/DE-111 и пушите свои изменения

Потом вы хотите потестить определенную функциональность на деве, но в фича-ветке уже намешано много всего. А вам нужны всего лишь 1-2 коммита

Что делать?

Сначала из своей ветки достаем хэши коммитов. Потом идем в нужную ветку и вставляем их туда

`git checkout feature/DE-111 git log --oneline -10 # последние 10 коммитов

git checkout dev git cherry-pick commit1-hash commit2-hash git push

Теперь в деве такая история коммитов:

🟣commit2-hash 🟣commit1-hash 🟣dev-last-commit 🟣...

Но если теперь вы сделаете merge ветки, то каждый коммит задублируется:

🟣merge branch 'feature/DE-111' into dev 🟣commit2-newhash - это изменения commit2 с новым хешом 🟣commit2-hash 🟣commit1-newhash - это изменения commit1 с новым хешом 🟣commit1-hash 🟣dev-last-commit 🟣...`

repost

92

input message

напишите коммент

еще контент в этом сообществе

еще контент в этом соообществе

войдите, чтобы увидеть

и подписаться на интересных профи

в приложении больше возможностей

пока в веб-версии есть не всё — мы вовсю работаем над ней

сетка — cоциальная сеть для нетворкинга от hh.ru

пересекайтесь с теми, кто повлияет на ваш профессиональный путь