4 puan yazan GN⁺ 2025-01-18 | 1 yorum | WhatsApp'ta paylaş
  • Git sorunlarını çözme yolları

    • Git’in karmaşık ve hata yapmaya açık bir araç olduğu, bu yüzden sorunları çözmenin yollarını bulmanın zor olabildiği vurgulanıyor.
    • Çeşitli sorun durumları ve bunların çözümleri sade İngilizceyle açıklanıyor.
  • Sorun durumları ve çözüm yolları

    • Yanlış bir işlemi geri almak istediğinizde

      • git reflog kullanarak önceki işlemlerin listesini kontrol edin ve git reset HEAD@{index} ile istediğiniz noktaya geri dönün.
    • Commit’ten sonra küçük bir değişiklik gerektiğinde

      • Değişiklikten sonra git add . ve git commit --amend --no-edit kullanarak değişiklikleri son commit’e ekleyin.
      • Dikkat: Herkese açık commit’leri değiştirmeyin.
    • Son commit mesajını değiştirmek istediğinizde

      • Mesajı değiştirmek için git commit --amend kullanın.
    • Yanlış branch’e commit attığınızda

      • Yeni bir branch oluşturun, git reset HEAD~ --hard ile master branch’ten commit’i kaldırın, ardından yeni branch’e geçerek commit’i koruyun.
    • diff komutu çalışmadığında

      • Stage’e alınmış dosyaların farklarını görmek için git diff --staged kullanın.
    • Önceki bir commit’i geri almak istediğinizde

      • git log ile commit’i bulun ve git revert [saved hash] kullanarak ilgili commit’i geri alın.
    • Dosya değişikliklerini geri almak istediğinizde

      • git log ile önceki commit’i bulun ve git checkout [saved hash] -- path/to/file ile dosyayı geri alın.
  • Diğer

    • Repository’yi başlangıç durumuna döndürmek istediğinizde
      • Uzak repository ile senkronize olmak için git fetch origin, git checkout master, git reset --hard origin/master kullanın.
      • İzlenmeyen dosya ve dizinleri silmek için git clean -d --force kullanın.
  • Dikkat edilmesi gerekenler

    • Bu sitenin kapsamlı bir başvuru kaynağı olmadığı ve farklı yöntemlerin bulunabileceği belirtiliyor.
    • Çeviriye katkıda bulunan birçok kişiye teşekkür ediliyor.

1 yorum

 
GN⁺ 2025-01-18
Hacker News görüşleri
  • git checkout yerine git switch kullanmak daha iyi
  • reset --hard komutundan kaçınılması ve yanlış branch'e commit atıldığında sorunu çözmek için yeni bir branch oluşturma yöntemi öneriliyor
    • mevcut durumdan yeni bir branch oluştur
    • önceki commit'e geç
    • master branch'ini o commit ile ez
    • çalışma branch'ine geç
  • Yanlış branch'e commit atıldığında çözüm olarak cherry-pick kullanımı öneriliyor
    • doğru branch'e geç
    • master'ın son commit'ini al
    • master'dan sil
  • "Vazgeçtim" durumlarında git kullanımı için bir yöntem öneriliyor
    • origin'in en güncel durumunu al
    • izlenen dosyaları geri yükle
    • izlenmeyen dosya ve dizinleri sil
    • master'ı uzak sürüme sıfırla
  • Git öğrenirken varsayılan olarak UI önerilmesinin daha iyi olduğu söyleniyor
    • CLI'nin daha hızlı olduğunu düşünürsen daha sonra kullanabilirsin
    • önce ağacı görsel olarak nasıl etkileşimli kullandığını anlamak gerekiyor
  • hg+mercurial için arama sonucu çıkmasına seviniyor
    • hg'nin DVCS savaşlarını kaybetmiş olmasına üzüldüğünü söylüyor
  • Git komutlarının argümanlarını hatırlamak zor
    • komutlar keşfedilebilir değil ve kolay hatırlanmıyor
  • 2025 Nisan'ında git'in 20. yılını kutlamanın tuhaf hissettireceği söyleniyor
    • GitHub etkisi yeni bir VCS ihtiyacını ortadan kaldırmış olabilir
  • "Oh shit" durumlarında yerel depoyu silip yeniden clone etme yöntemini kullanıyor
    • vakaların %95'inde iyi çalışıyor
  • git reflog ifadesini yanlışlıkla "re-flog" diye algıladığı için akılda tutmak zor geliyor
  • Git kullanıcısı değil ama git commitin anlamsız olduğunu düşünüyor
    • commit ancak push edildiğinde veya merge edildiğinde önemli hale geliyor
  • Git'in avantajlarından birinin, bir nesne oluşturulduktan sonra işin kaybolmaması olduğu söyleniyor
    • sık commit atmak önemli