Git uygulama görevleri: ekipten gerçek durumlar
Bir ekibin gününden alınmış kısa Git sorunlarını yönlendirme olmadan çözersin; her görev bir öncekinden biraz zordur.
Seviye 201 · 15 ders · 12 pratik lab
Dersler
Günlük kazalar
- Yanlış dala commit attın
- Ayrık HEAD’de kalan işi kurtar
- Yarım kalmış birleştirmeyi toparla
- Kaybolan stash’i bul
- Kısa görev: sabah gelen üç kazayı sırayla düzelt
Ekip sorunları
- Ayrışmış yerel ve uzak dal
- Satır sonu savaşı: tüm dosyalar değişmiş görünüyor
- İnceleme isteğinde parola var
- Alt modül boş geliyor
- Kısa görev: yeni gelen geliştiricinin bozduğu depoyu düzelt
Sürüm günü
- Düzeltme sürüme girmemiş
- Yanlış commit’e verilmiş sürüm etiketi
- Hata hangi sürümden beri var
- Kısa görev: acil yama sürümünü çıkar
Kapanış
- Bitirme görevi: kötü bir haftanın tüm Git sorunlarını çöz
Pratik lablar
- Ekip arkadaşının dalına atılan commit: Yanlışlıkla ekip arkadaşının dalına attığın henüz gönderilmemiş iki commit’i kendi dalına taşı ve onun dalını eski hâline döndür.
- Etiket üzerinde yapılan iş: Bir sürüm etiketine geçip farkında olmadan commitler attıktan sonra başka dala geçen geliştiricinin işini bul, bir dala bağla ve ana dala birleştir.
- Silinen stash ve yarım birleştirme: Yarım kalmış bir birleştirmeyi güvenle bitir ya da geri al, ardından onlarca sarkan commit arasından yanlışlıkla silinen stash’i bul ve işi kayıpsız geri getir.
- Ayrışmış dallar ve pull ayarı: Uyarı veren ayrışmış yerel ve uzak dalı rebase ile birleştir, depoda pull davranışını kalıcı olarak ayarla ve sonraki pull’un uyarısız çalıştığını göster.
- Her dosya değişmiş görünüyor: Farklı işletim sistemlerinden gelen satır sonu ayarları yüzünden tüm dosyaları değişmiş gösteren depoya .gitattributes kuralları ekle, depoyu yeniden normalize et ve git status’un temizlendiğini göster.
- Açık birleştirme isteğinde parola: Henüz birleştirilmemiş bir dalın geçmişine girmiş parolayı tüm commitlerden temizle, dalı güvenle yeniden gönder ve dalda parolanın hiçbir commit’te kalmadığını kanıtla.
- Yanlış commit’teki etiket: Henüz kimsenin kullanmadığı sürüm etiketini doğru commit’e taşı, uzak depoda da güncelle ve ls-remote ile etiketin doğru commit’i gösterdiğini kanıtla.
- Hata hangi sürümlerde var?: Hatayı getiren commit’i log -S ile bul, onu içeren tüm sürüm etiketlerini listele ve etkilenen ve etkilenmeyen sürümlerin tablosunu çıkar.
- Gece yarısı yama sürümü: Son sürüm etiketinden bakım dalı aç, güvenlik düzeltmesini taşı, sürüm numarasını artırıp etiketle ve iki etiket arasındaki farkın yalnızca düzeltmeyi içerdiğini göster.
- Dağınık yazar kimlikleri: Aynı kişinin farklı adlarla ve e-postalarla göründüğü depoya bir .mailmap ekle ve shortlog çıktısında her kişinin tek satırda toplandığını göster.
- Commit’lenmiş bağımlılık klasörü: Gönderilmemiş son commitlere girmiş binlerce dosyalık bağımlılık klasörünü geçmişten çıkar, yok sayma kuralı ekle ve depo boyutunun düştüğünü göster.
- Birleştirmede kaybolan değişiklik: Çakışma çözümü sırasında sessizce kaybolan bir düzeltmeyi birleştirme commit’ini ebeveynleriyle karşılaştırarak bul, düzeltmeyi geri getir ve testin geçtiğini göster.
Kurs hakkında
Bir ekibin gününden alınmış kısa Git sorunlarını yönlendirme olmadan çözersin; her görev bir öncekinden biraz zordur.
Ne öğreneceksin
- Günlük kazalar
- Ekip sorunları
- Sürüm günü
- Kapanış
Ön koşullar
Aynı yolun 101 düzeyindeki kurslarını bitirmiş olmak ya da o konuları biliyor olmak yeterlidir.
Lab ortamı
Dersler, tarayıcında açılan sana özel bir Kali Linux terminalinde geçer. Kurulum gerekmez; lab her derste temiz başlar.
Sık sorulan sorular
- Bu kurs benim düzeyime uygun mu?
- Kurs 201 düzeyindedir; daha düşük düzeydeki kursların konularını bildiğin varsayılır.
- Kurulum gerekir mi?
- Hayır. Her ders tarayıcında açılan sana özel bir lab ortamında geçer.
- Dersler nasıl işleniyor?
- Her ders 8 ile 10 adımdan ve bir kısa sınavdan oluşur. İlk adımlarda yazman gereken komut gösterilir, sonraki adımlarda yardım azalır; iki denemede takılırsan çözüm açılır.
- Ücretsiz deneyebilir miyim?
- Evet. Her kursun ilk üç dersi ücretsizdir.