Yanıtlar:
Tarihi yazdırmak için birkaç seçenek var . Muhtemelen en kolayı önceden pişirilmiş --pretty
formatlardan birini kullanmaktır , örneğin git log --pretty=fuller
- bu her iki tarihi de gösterecektir. Yalnızca bir tarih görmek istiyor, ancak bunu taahhüt tarihi yapmak istiyorsanız, kullanabilirsiniz git log --format=<some stuff>
. Biçimi tanımlamak için izin verilen tüm kodlar içinde belgelenmiştir git help log
. Tarih biridir taahhüt %cd
, %cD
, %cr
, %ct
veya %ci
ne biçimine bağlı bunu tercih ederim.
Sık yapmak istediğiniz bir şeyse, bunu bir takma ada koyun veya yazarken kaydetmek için yardımcı bir komut dosyası yazın.
Göreceli taahhüt tarihi için kullanabilir --pretty=format
ve kullanabilirsiniz %cr
.
Örneğin:
$ git log --graph --pretty=format:'%C(auto)%h%d (%cr) %cn <%ce> %s'
Bunun kullanımını kolaylaştırmak için git'te bir takma ad tanımlayabilirsiniz. Aşağıdakilere sahibim .gitconfig
:
[alias]
# see `git help log` for detailed help.
# %h: abbreviated commit hash
# %d: ref names, like the --decorate option of git-log(1)
# %cn: commiter name
# %ce: committer email
# %cr: committer date, relative
# %ci: committer date, ISO 8601-like format
# %an: author name
# %ae: author email
# %ar: author date, relative
# %ai: author date, ISO 8601-like format
# %s: subject
# my awesome git log replacement
lol = log --graph --pretty=format:\"%C(auto)%h%d%Creset %C(cyan)(%cr)%Creset %C(green)%cn <%ce>%Creset %s\"
# same as above, but ISO date
lold = log --graph --pretty=format:\"%C(auto)%h%d%Creset %C(cyan)(%ci)%Creset %C(green)%cn <%ce>%Creset %s\"
# using build-in standards
lol2 = log --oneline --graph --decorate
# shows branches and their last commits
lol3 = log --all --graph --decorate --oneline --simplify-by-decoration
Linux veya benzeri sistemlerde, tek tırnak kullanabilirsiniz '
yerine çift tırnak "
:
[alias]
lol = log --graph --pretty=format:'%C(auto)%h%d%Creset %C(cyan)(%cr)%Creset %C(green)%cn <%ce>%Creset %s'
Bununla git lol
, güzel çıktıyı görmek için basitçe çalıştırın veya diğer varyantları.
İşte çıktı git lol --simplify-by-decoration
:
lol
yazmaktan daha kolay log
ve kulağa daha iyi geliyor.
git log
ihtiyacınız olursa normal olana erişmenizi sağlar .git lold
ISO formatındaki tarihlerin çıktısı . Katkıda bulunan kişinin saat dilimini kolayca görebilmenin bonusuyla birlikte bir taahhüdün yapıldığı kesin tarihi / saati görmek için kullanışlıdır.
2020-06'yı düzenleme : Ekran görüntüleri eklendi. (Hash hash) ve (ref adları) %C(auto)
için (auto / default renklendirme) kullanılacak şekilde güncellendi . E -postaya ek olarak (gönderen adı) eklendi .%h
%d
%cn
git log --graph --pretty=format:\"%C(yellow)%h%Creset%C(cyan)%C(bold)%d%Creset %C(cyan)(%cr)%Creset %C(green)%ce%Creset %s\"
bash: beklenmedik belirteç yakınında sözdizimi hatası `('
Bu biçimi tercih ediyorum, yazar adını içermiyor ve kesinleştirme için gerçek tarihi içeriyor.
git log --graph --pretty=format:"%C(yellow)%h%x09%Creset%C(cyan)%C(bold)%ad%Creset %C(green)%Creset %s" --date=short
git show --pretty=fuller HEAD
bir örnek olarak). Yerel geliştirme için bunlar genellikle aynıdır, ancak e-posta veya diğer mekanizmalar yoluyla eklenen yamalar için farklı olabilirler, burada AuthorDate yamanın oluşturulduğu tarih ve CommitDate depoya gerçekte uygulandığı zamandır.