Sobes.tech
Middle

git cherry-pick əmri nə üçün istifadə olunur?

sobes.tech Süni İntellekt

AI-dan cavab

Fərqli bir buda müəyyən commitləri digərinə köçürmək üçün istifadə olunur. Bu, müəyyən commit tərəfindən təqdim olunan dəyişiklikləri seçərək tətbiq etməyə imkan verir, bütün buda birləşdirməyə ehtiyac olmadan.

Üstünlüklər:

  • Tək-tək dəyişikliklərin tətbiqi.
  • Yalnız lazım olan commitləri köçürərkən birləşmə münaqişələrindən qaçınmaq.
  • Buda tarixçəsinin təmiz saxlanması.

Sintaksis:

git cherry-pick <commit-hash>

Bir neçə commit hash və ya commit aralığı göstərə bilərsiniz:

git cherry-pick <commit-hash-1> <commit-hash-2> ...
git cherry-pick <başlangıc-hash>^..<son-hash>

İstifadə nümunəsi:

feature adlı bir buda A, B, C commitləri ilə və develop buda ilə fərz edək. Yalnız B commitini develop-ə köçürmək istəyirik.

  1. develop buda üzərinə keçin:
    git checkout develop
    
  2. B commitini (hash abcdef olduğunu fərz edək) cherry-pick edin:
    git cherry-pick abcdef
    

Əgər münaqişələr yaranarsa, onları həll edin və sonra davam edin (git cherry-pick --continue) və ya əməliyyatı ləğv edin (git cherry-pick --abort).

Alternativlər:

  • git merge: Bir budanın bütün dəyişikliklərini digərinə birləşdirir.
  • git rebase: Commitlərin ardıcıllığını yeni bazaya köçürür və ya birləşdirir.

git cherry-pick səhvləri düzəltmək və ya kiçik funksional dəyişiklikləri buda arasında seçərək köçürmək üçün faydalıdır.