Sobes.tech
Middle

git cherry-pick komutu ne işe yarar?

sobes.tech yapay zeka

AI'dan gelen yanıt

Bir daldan diğerine belirli commitleri taşımak için kullanılır. Belirli bir commit tarafından sunulan değişiklikleri seçerek uygulamaya olanak tanır, tüm dalı birleştirmeye gerek kalmadan.

Avantajlar:

  • İzole edilmiş değişiklik uygulaması.
  • Sadece gerekli commitleri taşırken birleştirme çatışmalarını önler.
  • Dalların temizliğini korur.

Sözdizimi:

git cherry-pick <commit-hash>

Birden fazla commit hash'i veya commit aralığı belirtilebilir:

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

Kullanım örneği:

feature adlı bir dalda A, B, C commitleri olduğunu ve develop dalına sadece B commitini taşımak istediğimizi varsayalım.

  1. develop dalına geçin:
    git checkout develop
    
  2. B commitini (hash abcdef olduğunu varsayarak) cherry-pick yapın:
    git cherry-pick abcdef
    

Çatışma çıkarsa, bunları çözün ve ardından devam edin (git cherry-pick --continue) veya işlemi iptal edin (git cherry-pick --abort).

Alternatifler:

  • git merge: Bir dalın tüm değişikliklerini diğerine birleştirir.
  • git rebase: Bir dizi commit'i yeni bir temel commit üzerine taşır veya birleştirir.

git cherry-pick, hataları düzeltmek veya küçük fonksiyonel değişiklikleri dallar arasında seçerek taşımak istediğinizde kullanışlıdır.