我有一组不同类型日志的别名,例如:
lg = log --graph --pretty=format:'%C(cyan)%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(red)<%an>%Creset' --abbrev-commit --date=relative
unreleased = !git --no-pager log --graph --pretty=format:'%C(cyan)%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(red)<%an>%Creset' --abbrev-commit --date=relative release..master
有许多类型的日志别名,但大多数都使用相同的格式。如何使用公共部分的内容定义局部变量?
理想情况下,我想避免使用环境变量
答案 0 :(得分:3)
根据this question,git-config不支持扩展变量。但是,您可以使用公共部分定义别名:
lg = log --graph --pretty=format:'%C(cyan)%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(red)<%an>%Creset' --abbrev-commit --date=relative
然后将其他别名定义为使用公共别名的shell命令:
unreleased = !git --no-pager lg release..master
顺便说一句,指定--date=relative
无效,因为日志格式中的%cr
根据定义是相对日期。这也意味着--date=short
例如没有效果。如果您希望其他任何别名能够更改日期格式,则需要使用%cd
。