Yeni bir commit oluşturduğunuzda, git bir metin düzenleyiciyi çalıştırır ve içine bazı şeyler yazar.
Bu metin düzenleyiciyi kullanarak, amaç, hızlı bir şekilde oluşturduğunuz commit ile ilişkilendirilecek commit mesajını yazmanızdır.
Bunu yaptıktan sonra, kaydedin ve metin düzenleyiciden çıkın. Git, yazdıklarınızı kaydetme mesajı olarak kullanacaktır.
Kaydetme mesajının aşağıda açıklanan belirli bir yapısı vardır:
Kaydetme mesajının ilk satırı, mesaj başlığı (veya başlık) olarak kullanılır. Commit başlığının tercih edilen uzunluğu 40 karakterden azdır, çünkü bu, github'ın belirli bir deponun Commits sekmesinde onu kesmeden önce görüntülediği karakter sayısıdır ve bazı insanlar bunu rahatsız edici bulur.
Başlığı oluştururken, ilk kelime için büyük harfle yazılmış şimdiki zaman fiili kullanmak yaygın bir uygulamadır, ancak hiç gerekli değildir.
Bir satırsonu, iletinin başlığını ve gövdesini tanımlar.
Vücut ne istersen oluşabilir. Taahhüdünüzün getirdiği değişikliklere genel bir bakış makul. Bazı üçüncü taraf uygulamaları, çeşitli türden kancaları devreye sokmak için commit mesajlarının gövdesini içeren bilgileri kullanır (iki isim vermek için Gerrit ve Pivotal Tracker düşünüyorum).
İşte kısa ve tatlı bir örnek. Önde gelen #bir yorumu belirtir.
Gitignore index.pyc
Ignore gunicorn generated binary file
# Please enter the commit message for your changes. Lines starting
# with '#' will be ignored, and an empty message aborts the commit.
# On branch dev
# Your branch is ahead of 'origin/dev' by 10 commits.
# (use "git push" to publish your local commits)
#
# Changes to be committed:
# (use "git reset HEAD <file>..." to unstage)
#
# modified: .gitignore
#
Burada Bay Torvalds, iyi bir taahhüdün ne olduğu konusunda görüş bildiriyor.
Ve burada Tpope da aynı şeyi yapıyor.
Diğer birkaç cevapta da belirtildiği gibi, varsayılan düzenleyiciyi değiştirmek komut satırında tek satırlık bir işlemdir.
Tercihim için:
git config --global core.editor "vim"
--globalVarsayılanı değiştirmek için eklemeniz gerekmiyor mu?