git config的btw color.status.added和color.status.updated有什么不同?

时间:2018-12-03 17:07:50

标签: git

我当前更改了git配置的颜色。

如我所见,git docs可以用很少的插槽来更改color.status

  

使用自定义颜色进行状态着色。是标题(状态消息的标题文本),添加或更新(添加但未提交的文件),已更改(已更改但未添加到索引中的文件),未跟踪(不被Git跟踪的文件),分支(当前分支),nobranch(显示无分支警告的颜色,默认为红色),localBranch或remoteBranch(分别在分支和跟踪时的本地和远程分支名称)信息以状态短格式显示)或未合并(具有未合并更改的文件)。

我想知道以上addedupdated之间的区别。

所以我尝试同时使用git config color.status.added <color>git config color.status.updated <color>

对我来说,只有updated有效,added命令中没有任何区别。

有人知道其中的区别吗?什么时候可以使用added

2 个答案:

答案 0 :(得分:2)

对于git statuscolor.status.addedcolor.status.updated槽具有相同的含义。实际上,在内部,对color.status.added的任何引用都只是转换为对color.status.updated的值的引用。

换句话说,这些只是同义词。设置您喜欢的拼写。

答案 1 :(得分:1)

如文档中所述:“ 已添加 已更新用于已添加但未提交的文件”。

以下代码来自git版本v2.18.0。它表明"updated""added"之间确实没有区别。

static int parse_status_slot(const char *slot)
{
    ...
    if (!strcasecmp(slot, "updated") || !strcasecmp(slot, "added"))
        return WT_STATUS_UPDATED;
    if (!strcasecmp(slot, "changed"))
        return WT_STATUS_CHANGED;
    ...
}