首页 > 解决方案 > 颜色修饰符在 git 别名中不起作用

问题描述

我有我的 git 别名

    lds = log --pretty=format:"%C(yellow)%h\\ %ad%C(auto)%d\\ %C(reset)%s%C(blue)\\ [%an]" --date=short --decorate 

(只显示格式正确的单行日志)

而且我想使用诸如此类的颜色修饰符dim bold。但是当我向颜色添加修饰符时,我遇到了奇怪的错误fatal: option '--date=short' must come before non-option arguments

我什至尝试将选项移动到别名的开头:

    lds = log  --date=short --decorate --pretty=format:"%C(yellow)%h\\ %ad%C(auto)%d\\ %C(reset)%s%C(blue bold)\\ [%an]"

错误消失了,但现在输出为空。有任何想法吗?

标签: bashgitcolors

解决方案


不知何故,我发现原因是我的报价。我使用"并导致错误。如果我用单引号写别名,'它将完美地工作。我还需要从别名中删除斜杠。

lds = log --pretty=format:'%C(yellow)%h %ad%C(auto)%d %C(reset)%s%C(blue bold) [%an]' --date=short --decorate

推荐阅读