Commit Mesajı Nedir?
GIT’in resmi dokümantasyon sitesinde commit’in açıklamasını yaparken, mesaj ile ilgili kısımda;
... with a log message from the user describing the changes.
der. Yani kullanıcının yaptığı değişiklikleri tarif ettiği, anlattığı kayıttır bu aslında. Çünkü GIT değişiklikleri takip eden bir araçtır. Teknik olarak GIT deşikliğin ne olduğunu biliyor ama sonuç olarak kodu yazan insan olduğu için, insanın anlayacağı şekilde açıklamak gerekiyor nelerin değiştiğini.
En hızlı şekilde commit mesajı yazmak için günlük hayatta;
$ git commit -m "MESAJ"
kullanırız. Bu aslında kısa mesaj kullanımıdır. Örneğin git log --oneline
kullanımında aldığımız çıktı:
a58834812b45 (HEAD -> master, origin/master, origin/HEAD) Merge pull request #1295 from ninoseki/master
875f36f963dd Change relative URLs to absolute URLS
a1b0de7b45a7 Fixed broken links in rack-protection/README.md
ec08e37bf8b4 Linkify protection docs
ea1a21c0734e Update homepages for sinatra-contrib and rack-protection
gibidir. COMMIT_ID
ve COMMIT_MESSAGE
şeklinde görürüz. Bu kısa mesaj,
aslında commit mesajının ilk satırıdır ve bu ilk satır 50 karakterdir.
ID’si a58834812b45 olan commit’e bakalım:
$ git show a58834812b45
Merge pull request #1295 from ninoseki/master
Fixed broken links in rack-protection/README.md
İlk satırda kısa açıklama, bir satır boşluk ve mesajın devamı bulunur. Ben de dahil olmak üzere, pek çok geliştirici, yaptığı değişiklikleri uzun uzun yazmak yerine ışık hızıyla;
$ git commit -m 'up'
$ git commit -m 'update'
$ git commit -m 'wip'
gibi, aslında kavgada bile yapılmayacak hareketleri yapmışızdır. Neden? Kim
onca değişikliği oturup yazacak şimdi? İşte en azından bu durumları minimal
düzeye indirmek için tavsiye edilen ilk yöntem: git commit
ile commit
yapmak, git commit -m 'MESAJ'
kullanmamak!
Bu yöntemle karşımıza git config core.editor
ile belirlenmiş text editörü
çıkar ve ferah fezah mesaj yazacak bir alanla karşı karşıya kalırız. Böyle bir
durumda otomatikleştirilmiş
şablon mesaj çok işimize
yarayabilir.