0Pricing
Git & GitHub Professional Workflow · Ders

Gönderimleri Seçerek Uygulama

`git cherry-pick` kullanarak tek tek gönderimleri bir daldan diğerine seçerek uygulamayı anlayın.

Gönderimleri Seçerek Uygulama, CoddyKit'te ücretsiz bir Git & GitHub Professional Workflow dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Git & GitHub Professional Workflow öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Git & GitHub Professional Workflow kursu toplamda 4 dersten oluşur.

İşlemeleri Seçerek Taşıma

Bir dalın tamamına değil de yalnızca tek bir belirli değişikliğine ihtiyacınız varsa ne yaparsınız? git cherry-pick, deponuzun geçmişindeki herhangi bir yerden tek bir işlemeyi doğrudan geçerli dalınıza uygulamanızı sağlar.

Bu, ağaçtan tek bir kiraz koparmaya benzer! Özgün işlemedeki değişiklikleri yineleyen yepyeni bir işleme geçerli dalınızda oluşturulur.

Cherry-Pick Ne Zaman Kullanılır

Büyük bir özellik dalında çalıştığınızı ve orada yaptığınız kritik bir hata düzeltmesinin ana üretim dalınızda da hemen şimdi gerekli olduğunu keşfettiğinizi düşünün. Özellik dalının tamamını henüz birleştirmek istemiyorsunuz.

Bu, cherry-pick için kusursuz bir senaryodur. İlişkisiz çalışmaları beraberinde getirmeden yalıtılmış değişiklikleri taşımanıza yardımcı olur.

Temel Komut

Temel komut basittir: git cherry-pick <commit-hash>.

  • Öncelikle, işlemeyi uygulamak istediğiniz dalda olduğunuzdan emin olun.
  • Ardından, seçmek istediğiniz işlemenin benzersiz tanımlayıcısına (karmasına) ihtiyacınız vardır.
  • Git, aynı değişiklikleri içeren yeni bir işlemeyi geçerli dalınızda oluşturur.
git cherry-pick <commit-hash>

İşleme Karmalarını Bulma

Cherry-pick yapmak için karmaya ihtiyacınız vardır! Bunu git log kullanarak bulabilirsiniz.

--oneline seçeneği, özlü bir görünüm için oldukça kullanışlıdır:

git log --oneline

Cherry-Pick Senaryosunu Hazırlama

Basit bir senaryo oluşturalım. Bir main dalı ve bir feature/login dalı oluşturacağız. feature/login dalında, main dalına getirmek istediğimiz bir işleme oluşturacağız.

"HOTFIX" işlemesini main dalına getirmek istiyoruz.

git init my_project
cd my_project
echo "Initial content" > file.txt
git add file.txt
git commit -m "Initial commit"
git branch feature/login
git checkout feature/login
echo "Login feature added" >> login.txt
git add login.txt
git commit -m "Add basic login feature"
echo "Fix: Login button style" >> style.css
git add style.css
git commit -m "HOTFIX: Fix login button styling"

Cherry-Pick İşlemini Gerçekleştirme

Şimdi main dalına geri dönün ve "HOTFIX" işlemesini uygulayın. "HOTFIX: Fix login button styling" işlemesinin karmasının abcdefg olduğunu varsayalım.

Bu komutu çalıştırdıktan sonra main dalınızda, abcdefg ile aynı değişiklikleri içeren yeni bir işleme görünür. Görmek için git log --oneline kullanın!

git checkout main
git cherry-pick abcdefg

Cherry-Pick Çakışmalarını Ele Alma

Birleştirmede olduğu gibi, iki geçmişte de aynı kod satırları farklı biçimde değiştirildiyse cherry-pick işlemi çakışmalara yol açabilir.

  • Git işlemi duraklatır ve çakışan dosyaları işaretler.
  • Dosyalardaki çakışmaları elle çözün.
  • Çözülmüş dosyaları git add ile ekleyin.
  • git cherry-pick --continue ile tamamlayın.
# After resolving conflicts in editor:
git add .
git cherry-pick --continue

Birden Çok İşlemeyi Seçme

Aynı anda birden fazla işlemeyi cherry-pick yapabilirsiniz.

Bir işleme aralığını seçmek için (hashA'dan başlayıp hashB'yi dahil etmeden):

git cherry-pick hashA..hashB

Ne Zaman Kullanılır (ve Ne Zaman Kullanılmaz)

Cherry-pick güçlüdür, ancak düşünerek kullanın.

  • Şunlar için uygundur: Düzeltmeler ve ilişkisiz dallar arasında küçük, yalıtılmış değişiklikleri taşıma.
  • Şunlar için daha az uygundur: Büyük değişiklik kümelerini düzenli olarak bütünleştirme; dikkat edilmezse yinelenen işlemelere yol açabilir ve geçmişin izlenmesini zorlaştırabilir. Dalın tamamını bütünleştirmek için birleştirmeyi veya yeniden temel almayı tercih edin.

Kısa Denetim: Cherry-Pick'in Amacı

feature/new-design dalınızda kritik bir biçimlendirme sorununu düzelten bir işlemeniz var. Özellik dalının tamamını birleştirmeden bu düzeltmeye hemen main dalınızda ihtiyacınız var.

Özet: Hedefli Değişiklikler

Bu derste, belirli işlemeleri geçerli dalınıza uygulamak için kullanılan yararlı bir komut olan git cherry-pick hakkında bilgi edindik.

  • Hedef dalınızda aynı değişiklikleri içeren yeni bir işleme oluşturur.
  • Düzeltmeler veya yalıtılmış değişiklikleri taşıma için idealdir.
  • Genellikle git log --oneline ile bulunan işleme karmasına ihtiyacınız vardır.
  • Birleştirmede olduğu gibi çakışmaları çözmeye hazırlıklı olun.

Cherry-pick konusunda ustalaşmak, projenizin geçmişi üzerinde hassas denetim sağlar!

Sıkça Sorulan Sorular

“Gönderimleri Seçerek Uygulama” dersi ücretsiz mi?

Evet — “Gönderimleri Seçerek Uygulama” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Git & GitHub Professional Workflow kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Git & GitHub Professional Workflow kursu toplamda 4 dersten oluşur.

“Gönderimleri Seçerek Uygulama” dersinde ne öğreneceğim?

`git cherry-pick` kullanarak tek tek gönderimleri bir daldan diğerine seçerek uygulamayı anlayın. Git & GitHub Professional Workflow ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

Git & GitHub Professional Workflow öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te Git & GitHub Professional Workflow, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Gönderimleri Seçerek Uygulama” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu Git & GitHub Professional Workflow dersinde kod yazıp çalıştırabilir miyim?

Evet. Her Git & GitHub Professional Workflow dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Birleştirme Çakışmalarını Elle Çözme
  2. Geçmiş için Etkileşimli Yeniden Tabanlama
  3. Gönderimleri Seçerek Uygulama
  4. Çakışma Çözümlerini Yeniden Kullanmak için Git Rerere Kullanımı
← Git & GitHub Professional Workflow Sayfasına Dön