默认情况下,git-reflog命令不会在每个条目旁边显示日期,这让我感到奇怪的疏忽;我认为这将非常有用。
是否有任何命令行选项或其他调整可用于使其在添加每个reflog条目时显示? manpage即将到来......
答案 0 :(得分:339)
正如手册页所写,您可以使用git log
的选项,比如git reflog --pretty=short
或其他任何您喜欢的选项
试
git reflog --date=iso
答案 1 :(得分:28)
您可以使用--walk-reflogs
的{{1}}变体:
git log
默认情况下这是相当冗长的,并在其他内容中打印日期。您可以使用标准git log -g
标记格式化它。
您也可以直接使用reflog命令和--pretty=
标志格式化输出。
--pretty=
在上面的格式中,git reflog --pretty='%cd %h %gd %gs'
显示正常reflog输出左侧的提交日期。
答案 2 :(得分:6)
告诉git
采用何种格式,计算reflog
条目或定时reflog
条目,即
$ git reflog @{now}
$ git reflog @{0}
答案 3 :(得分:4)
您必须使用自定义格式:
git reflog --format='%C(auto)%h %<|(20)%gd %C(blue)%cr%C(reset) %gs (%s)'
在上面的格式中,%h
是提交哈希,%cr
是相对提交者日期,%gs
是reflog主题,%s
是提交主题。查看git-log docs其他可能的占位符。例如,使用%ci
代替%cr
将显示绝对提交日期。
您可以使用自定义pretty
格式将其保存在〜/ .gitconfig中,并通过别名引用它:
[alias]
rl = reflog --pretty=reflog
[pretty]
reflog = %C(auto)%h %<|(20)%gd %C(blue)%cr%C(reset) %gs (%s)
答案 4 :(得分:4)
注意git 2。10(2016年第3季度)使用git reflog
改进了有关日期的文档。
请参阅commit 642833d,commit 1a2a1e8(2016年7月27日),commit d38c7b2,commit 522259d,commit 83c9f95,commit 2b68222(2016年7月22日) Jeff King (peff
)
帮助:Jeff King (peff
)。
(由Junio C Hamano -- gitster
--合并于commit 0d32799,2016年8月8日)
输出中的reflog指示符可能显示为
ref@{Nth}
(其中Nth
是reflog中的反向时间顺序索引)或ref@{timestamp}
(带有该条目的时间戳) ,取决于一些规则。
It includes:
- 关于--date=raw
的更新:
将日期显示为自纪元(1970-01-01 00:00:00 UTC)以来的秒数,后跟一个空格,然后将时区显示为与UTC的偏移量(
+
或{{1有四位数字;前两位是小时,后两位是分钟) 即,好像时间戳格式为-
) 请注意,strftime("%s %z")
选项不会影响-local
值(总是以UTC为单位测量),但会切换附带的值 时区价值。
一个新选项:seconds-since-epoch
将日期显示为Unix纪元时间戳(自1970年以来的秒数) 与
--date=unix
一样,这始终为UTC,因此--raw
无效。
答案 5 :(得分:1)
使用 ohmyzsh 将 collection.AsQueryable().Where(e =>
allWordsArr.Any(_ => e.FirstName.ToLower().StartsWith(_.ToLower())) ||
allWordsArr.Any(_ => e.LastName.ToLower().StartsWith(_.ToLower())) ||
allWordsArr.Any(_ => e.Title.ToLower().StartsWith(_.ToLower())))
输出格式化为 git reflog
:
glol
使用 ohmyzsh 将 git reflog --pretty='%Cred%h%Creset -%C(auto)%d%Creset %gs %Cgreen(%cr) %C(bold blue)<%an>%Creset'
输出格式化为 git reflog
:
glod
我使用这两个别名 git reflog --pretty='%Cred%h%Creset -%C(auto)%d%Creset %gs %Cgreen(%ad) %C(bold blue)<%an>%Creset'
、grlol
和其他一些别名和函数为 ohmyzsh 制作了一个自定义插件 git-mnz。
** 对不起,如果没有向 git 插件发送 PR,但有 hundreds PR waiting to be merged..
答案 6 :(得分:0)
git log --walk-reflogs --date=iso
答案 7 :(得分:0)
git reflog --pretty=medium
...但是他们很难找到(git-log 选项没有 bash 完成,log
手册页没有记录各种漂亮的内置配置文件的占位符字符串,另外与默认的 git-log
格式仍有一些差异,例如您必须通过 --abbrev
)