【发布时间】:2013-03-11 04:54:20
【问题描述】:
有没有办法知道什么时候创建了一个存储?
git stash list 仅列出存储,git stash show XXXXXX 显示所有文件和更改,但不显示存储创建的日期。
【问题讨论】:
有没有办法知道什么时候创建了一个存储?
git stash list 仅列出存储,git stash show XXXXXX 显示所有文件和更改,但不显示存储创建的日期。
【问题讨论】:
试试:
git stash list --date=local
它应该打印如下内容:
stash@{Thu Mar 21 10:30:17 2013}: WIP on master: 2ffc05b Adding resource
【讨论】:
git stash list --date=relative。值得注意的是--date 来自git log 命令,而不是stash 本身,请参阅此处了解可能的--date 值:stackoverflow.com/questions/7853332/git-log-date-formats
[alias] stashlist = "stash list --date=local"
git stash list --date=short 仅提供日期,采用固定宽度 YYYY-MM-DD 格式,易于目视扫描。
git show stash@{0} 还会打印出日期以及其他信息。
【讨论】:
您可以使用--pretty=format 来实现此目的。例如,这会生成一个包含相对时间的存储列表:
git stash list --pretty=format:"%C(red)%h%C(reset) - %C(dim yellow)(%C(bold magenta)%gd%C(dim yellow))%C(reset) %<(70,trunc)%s %C(green)(%cr) %C(bold blue)<%an>%C(reset)"
我在我的~/.gitconfig 文件的[alias] 部分中有这个设置,所以我可以将它绑定到一个简单的sl 命令:
[alias]
co = checkout
lg = log --graph --pretty=format:\"%Cred%h%Creset -%C(auto)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset\" --abbrev-commit
rl = reflog --pretty=format:\"%Cred%h%Creset %C(auto)%gd%Creset %C(auto)%gs%C(reset) %C(green)(%cr)%C(reset) %C(bold blue)<%an>%Creset\" --abbrev-commit
sl = stash list --pretty=format:\"%C(red)%h%C(reset) - %C(dim yellow)(%C(bold magenta)%gd%C(dim yellow))%C(reset) %<(70,trunc)%s %C(green)(%cr) %C(bold blue)<%an>%C(reset)\"
(您可以看到我对log 和reflog 也有类似的标记)
如果您想显示实际日期,而不是相对时间,请将%(cr) 替换为%(ci)。
【讨论】: