You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Git别名优化问题:获取上游提交日期及去除时区格式

问题解答

1. 获取上游分支的提交日期

你当前的别名里两次调用的都是本地分支的committerdate,要获取上游分支的提交日期,需要给日期字段加上upstream:前缀。把格式串里第二个%(committerdate:iso-strict)替换成%(upstream:committerdate:iso-strict)即可。

修改后的完整别名代码:

branc = "!f() { git for-each-ref --sort=committerdate refs/heads/$@ --format='%(color:red)%(objectname:short=8)%(color:reset) %(color:yellow)%(refname:short)%(color:reset) %(color:cyan)%(upstream:strip=2)%(color:reset) %(color:green)%(upstream:track)%(color:reset) (%(color:yellow)%(committerdate:iso-strict)%(color:reset)/%(color:cyan)%(upstream:committerdate:iso-strict)%(color:reset))'; }; f"

修改后输出的第二个日期会变成上游分支的最后提交时间,能直接对比本地与上游的提交差异。

2. 移除日期中的时区信息

Git支持通过format:自定义日期格式,替代iso-strict。使用%Y-%m-%dT%H:%M:%S格式串就能输出不带时区的紧凑ISO格式(例如2022-01-26T14:07:21)。

同时解决两个问题的最终别名代码:

branc = "!f() { git for-each-ref --sort=committerdate refs/heads/$@ --format='%(color:red)%(objectname:short=8)%(color:reset) %(color:yellow)%(refname:short)%(color:reset) %(color:cyan)%(upstream:strip=2)%(color:reset) %(color:green)%(upstream:track)%(color:reset) (%(color:yellow)%(committerdate:format:%Y-%m-%dT%H:%M:%S)%(color:reset)/%(color:cyan)%(upstream:committerdate:format:%Y-%m-%dT%H:%M:%S)%(color:reset))'; }; f"

内容的提问来源于stack exchange,提问作者caduceus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 11:36:28