Middle
Czym jest cherry-pick?
sobes.tech AI
Odpowiedź od AI
Cherry-pick to operacja Git, która pozwala na zastosowanie zmian z jednego lub kilku commitów z jednej gałęzi do innej.
Główne cechy:
- Pozwala wybiórczo przenosić commity.
- Tworzy nowe commity w docelowej gałęzi z tymi samymi zmianami co oryginały.
- Może prowadzić do konfliktów, które trzeba rozwiązać ręcznie.
Typowe scenariusze użycia:
- Naprawa błędów w gałęzi wydania, gdy poprawka została opracowana w gałęzi rozwoju.
- Przenoszenie pojedynczych funkcji lub poprawek między gałęziami, nie naruszając innych zmian.
Proces:
- Znaleźć hash (SHA) commitu(-ów), które trzeba cherry-pickować.
- Przełączyć się na docelową gałąź.
- Wykonać polecenie
git cherry-pick <commit-hash>. - W przypadku konfliktu, rozwiązać go i dokończyć cherry-pick (
git add .,git cherry-pick --continue). - Aby cherry-pickować wiele commitów, można je wskazać oddzielając spacjami lub użyć zakresu
git cherry-pick <commit-hash-start>..<commit-hash-end>.
Przykład polecenia:
# Zastosować jeden commit
git cherry-pick a1b2c3d4
# Zastosować kilka commitów
git cherry-pick a1b2c3d4 e5f6g7h8
# Zastosować zakres commitów (z wyłączeniem początku)
git cherry-pick a1b2c3d4..e5f6g7h8