Git Tutorials

Git Diff’i Ustalaştırma: Kapsamlı Bir Kılavuz

Spread the love

Git’in diff komutu, projenizdeki değişiklikleri anlamak için paha biçilmezdir. Dosyalarınızın farklı sürümlerini karşılaştırmanıza, değişiklikleri belirlemenize ve değişiklikleri commit etmeden önce gözden geçirmenize olanak tanır. Bu öğretici, git diff‘in temel kullanımlarını, açıklık ve pratik uygulamaya odaklanarak ele alacaktır.

İçerik Tablosu

Çalışma Kopyanızı Depoyla Karşılaştırma

Çalışma kopyanız, yerel makinenizdeki proje dosyalarını temsil eder. Depo, Git tarafından yönetilen sürüm geçmişini depolar. git diff (argüman olmadan) çalışma kopyanızdaki sahneye alınmamış değişiklikleri gösterir:


git diff

Çıktı, eklemeleri (+), silmeleri (-) ve değişiklikleri gösterir. Örneğin:


--- a/my_file.txt
+++ b/my_file.txt
@@ -1,3 +1,4 @@
 This is line 1
 This is line 2
+This is a new line
 This is line 3

Bu, my_file.txt dosyasına yeni bir satır eklendiğini gösterir. --- a/ ve +++ b/ eski ve yeni dosya sürümlerini temsil eder. Belirli bir dosyayı karşılaştırmak için:


git diff my_file.txt

Hazırlama Alanını Depoyla Karşılaştırma

Hazırlama alanı, bir sonraki commit için hazırladığınız değişiklikleri tutar. git diff --staged (veya git diff --cached) sahneye alınmış değişiklikler ile son commit arasındaki farkı gösterir:


git diff --staged

Bu, commit etmeden önce değişiklikleri gözden geçirmek için çok önemlidir. Karşılaştırmayı sınırlamak için dosya adlarını belirleyebilirsiniz.

Harici Diff Araçlarının Kullanımı

Git’in varsayılan metin tabanlı diff’i, karmaşık değişiklikler için zorlayıcı olabilir. Harici diff araçları, görsel karşılaştırmalar, sözdizimi vurgulama ve diğer yararlı özellikler sunar. git config kullanarak harici bir araç (Meld, KDiff3, Beyond Compare gibi) yapılandırın:


git config --global diff.external meld

meld‘i aracınızın komutu ile değiştirin. Doğru komut ve gerekli sistem özel ayarları için aracınızın belgelerine bakın.

Gelişmiş git diff Seçenekleri

git diff daha birçok seçenek sunar. Örneğin:

  • git diff --check: Boşluk hatalarını algılar.
  • git diff --summary: Değişikliklerin özlü bir özetini sağlar.
  • git diff <commit1>..<commit2>: İki commit’i karşılaştırır.
  • git diff --word-diff: Değişiklikleri kelime kelime vurgular.

git diff‘i iş akışınıza göre ayarlamak için bu seçeneklerle deney yapın. git diff‘i öğrenmek, verimli Git kullanımı için çok önemlidir.

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir