默认情况下在git-show上设置color-words选项

时间:2016-01-28 16:29:53

标签: git

默认情况下,配置git-diff以启用颜色词很容易。

默认情况下,我如何平均配置git-show以使用color-words

我到目前为止找到的唯一选择是使用别名:

[alias]
sh = show --color-words

3 个答案:

答案 0 :(得分:1)

您可以使用 [color"命令"] 。这是一个例子。您需要检查哪些选项"显示"具有

[color "diff"]
    frag = cyan
    new = green
    commit = yellow
[color "branch"]
    current = green
[color "status"]
    updated = green

答案 1 :(得分:1)

由于你不能在gitconfig中执行此操作,你仍然可以将git命令包装在〜/ .zshrc中

function do_git {
  cmd=$1
  shift
  extra=""
  if [ "$cmd" '==' "diff" ]; then
    extra="--color-words"
  fi
  "`whence -p git`" "$cmd" "$extra" "$@"
}
alias  git='do_git'

或〜/ .bash_profile或〜/ .bash_rc

function do_git {
  cmd=$1
  shift
  extra=""
  if [ "$cmd" == "diff" ]; then
    extra="--color-words"
  fi
  "`which git`" "$cmd" "$extra" "$@"
}
alias  git='do_git'

答案 2 :(得分:0)

--color-words

执行差异时,只需突出显示单词而不是行。

以下是使用和不使用--color-words

的差异示例

enter image description here

  

color.diff.whitespace
  git diff将使用color.diff.whitespace突出显示它们

脚本(示例)

#!/bin/sh
WS=$(git config --get-color color.diff.whitespace "blue reverse")
RESET=$(git config --get-color "" "reset")
echo "${WS}your whitespace color or blue reverse${RESET}"

如果你想为其他东西上色,也可以。

[color]
  ui = auto
[color "branch"]
  current = yellow reverse
  local = yellow
  remote = green
[color "diff"]
  meta = yellow bold
  frag = magenta bold
  old = red bold
  new = green bold
[color "status"]
  added = yellow
  changed = green
  untracked = cyan