Ana içeriğe geç

Commit

Okunuşu
kımit
Güncellendi 2 dk okuma

Bu sayfayı paylaşın

Bağlantıyı gönderin, tanımı bağlantısıyla birlikte alıntılayın ya da kendi sitenizde bir kart olarak gösterin.

https://softwaredictionary.org/tr/terimler/commit

Kısaca

Commit, Git'te projenin dosyalarının; benzersiz bir kimlik, yazar, zaman damgası ve değişikliği anlatan bir mesajla kaydedilmiş anlık görüntüsüdür.

Git'te commit nedir?

Commit, projenizin belirli bir andaki durumunu kaydeder. Her commit; izlenen dosyaların anlık görüntüsünü, kimin ve ne zaman yaptığını, değişikliği açıklayan bir mesajı ve kendisinden önce gelen commit'e ya da commit'lere giden bir bağlantıyı saklar. Bu bağlantılarla zincirlenen commit'ler projenin geçmişini oluşturur.

Commit yapmadan önce, hangi değişikliklerin dahil edileceğini git add ile hazırlık alanına (staging area) ekleyerek seçersiniz. git commit çalıştırıldığında yalnızca hazırlanan bu değişiklikler kaydedilir. Her commit'e hash adı verilen, uzun bir harf ve rakam dizisinden oluşan benzersiz bir tanımlayıcı atanır; bu sayede o sürümü görüntüleyebilir, karşılaştırabilir veya geri alabilirsiniz.

Commit'ler, bir belgenin geçmişindeki kayıt noktaları gibidir ve her birinin yanında ne yapıldığını anlatan kısa bir not bulunur. İyi commit'ler küçüktür ve tek bir mantıksal değişikliğe odaklanır; mesajı da 'güncellemeler' yerine 'Fix login redirect loop' gibi net olur. Bu, geçmişin okunmasını, incelenmesini ve geri alınmasını kolaylaştırır.

Commit yapmak paylaşmak demek değildir. Bir commit, uzak bir depoya göndermek için git push çalıştırana kadar yalnızca yerel deponuzda durur. Commit sözcüğü veritabanlarında da kullanılır ve orada bir işlemin (transaction) değişikliklerini kalıcı hale getirmek anlamına gelir.

Bir bakışta

Art arda üç commit. Her biri projenin benzersiz bir hash'i, yazarı, zamanı ve mesajı olan bir anlık görüntüsüdür ve her biri kendinden önceki commit'i, yani ebeveynini gösterir; main dalı en yenisini gösterir.ebeveynebeveyna1f3c9eGiriş sayfası eklendiAda · Pzt 10:027b2d4e1Yazım hatası düzeltildiLinus · Pzt 11:40e9c05b8Parolalar hash'lendiAda · Sal 09:15dosyaların görüntüsümain
En yeni commit'ten ebeveynleri geriye doğru izlemek bütün geçmişi verir. Commit'ler siz push edene kadar kendi makinenizde kalır.

Önemli noktalar

  • Commit, hazırlanmış değişikliklerin anlık görüntüsü ile yazar, tarih, mesaj ve üst commit gibi meta verilerden oluşur.
  • Her commit'i tanımlayan benzersiz bir hash vardır.
  • Commit'ler, uzak bir depoya push edilene kadar yerelde kalır.
  • Net mesajlı, küçük ve odaklı commit'ler geçmişin anlaşılmasını kolaylaştırır.

Örnek

Commit oluşturma ve incelemebash
# See what has changed
git status

# Stage a specific file for the next commit
git add src/login.ts

# Save the staged changes with a descriptive message
git commit -m "Fix login redirect loop"

# View the three most recent commits (short hash and message)
git log --oneline -3

# Reword the last commit's message (only before pushing)
git commit --amend -m "Fix redirect loop after login"

Sık sorulan sorular

Git'te bir commit nasıl geri alınır?

Zaten paylaşılmış bir commit'i geri almak için, o commit'in tersini uygulayan yeni bir commit oluşturan git revert <hash> komutunu kullanın. En son yerel commit'inizi, değişiklikleri dosyalarınızda tutarak geri almak için git reset --soft HEAD~1 kullanın.

İyi bir commit mesajı nasıl olmalıdır?

İyi bir commit mesajı, 'Add password reset email' gibi emir kipiyle yazılmış, yaklaşık 50 karakterlik kısa bir özet satırıyla başlar. Daha fazla bağlam gerekiyorsa bir boş satır bırakılır ve değişikliğin neden yapıldığını anlatan daha uzun bir açıklama eklenir.

git commit ile git push arasındaki fark nedir?

git commit, yerel deponuza bir anlık görüntü kaydeder. git push ise yerel commit'lerinizi uzak bir depoya yükler; böylece başkaları da görebilir.

İlgili sayfalar

Kaynaklar

Bu sayfada bir hata ya da eksik mi gördünüz?Düzeltme önerin

Daha fazla

Ayarlar