首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何更改Git日志日期格式

如何更改Git日志日期格式
EN

Stack Overflow用户
提问于 2011-10-22 01:56:18
回答 5查看 136.8K关注 0票数 176

我试图在Git中显示最后一次提交,但我需要特殊格式的日期。

我知道log pretty format %ad支持--date格式,但我能找到的唯一--date格式是"short“。我想知道其他的,以及我是否可以创建一个自定义的,例如:

代码语言:javascript
复制
git -n 1 --date=**YYMMDDHHmm** --pretty=format:"Last committed item in this release was by %%an, %%aD, message: %%s(%%h)[%%d]"
EN

回答 5

Stack Overflow用户

发布于 2013-05-24 21:20:03

我花了很长时间寻找一种方法,让git logYYYY-MM-DD格式输出日期,这种格式在less中也适用,我想出了以下格式:

代码语言:javascript
复制
%ad%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08

以及交换机--date=iso

这将打印ISO格式的日期(较长的日期),然后打印14次退格符(0x08),在我的终端中,这有效地删除了YYYY-MM-DD部分之后的所有内容。例如:

代码语言:javascript
复制
git log --date=iso --pretty=format:'%ad%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%aN %s'

这给出了类似的结果:

代码语言:javascript
复制
2013-05-24 bruno This is the message of the latest commit.
2013-05-22 bruno This is an older commit.
...

我所做的是创建了一个名为l的别名,并对上面的格式进行了一些调整。它在左侧显示提交图,然后是提交的散列,然后是日期、短名称、引用名称和主题。别名如下(在~/.gitconfig中):

代码语言:javascript
复制
[alias]
        l = log --date-order --date=iso --graph --full-history --all --pretty=format:'%x08%x09%C(red)%h %C(cyan)%ad%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08%x08 %C(bold blue)%aN%C(reset)%C(bold yellow)%d %C(reset)%s'
票数 37
EN

Stack Overflow用户

发布于 2016-09-06 08:49:59

我需要同样的东西,并发现以下内容对我有效:

代码语言:javascript
复制
git log -n1 --pretty='format:%cd' --date=format:'%Y-%m-%d %H:%M:%S'

--date=format格式化日期输出,其中--pretty指示要打印的内容。

票数 31
EN

Stack Overflow用户

发布于 2014-04-12 11:47:17

代码语言:javascript
复制
date -d @$(git log -n1 --format="%at") +%Y%m%d%H%M

请注意,这将转换为您的本地时区,以防对您的用例很重要。

票数 11
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/7853332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档