2012-01-01 25 views
59

当我键入git status我看到:“T”在“git status”中的含义是什么? (这是不是在手册页)

T /path/to/file... 
M /path/to/otherfile... 

究竟是什么的Tgit status是什么意思?

我试过man git-status(我认为它应该在那里,但不是)。

+0

参见[在git的状态输出 'typechange'(HTTP: //git.661346.n2.nabble.com/typechange-in-the-git-status-output-tp6170106p6170137.html)。 – 2014-06-04 01:50:04

回答

85

这意味着文件的类型改变了。例如,一个成为常规文件的符号链接。

据我所知,这仅适用于符号链接,子模块和普通文件

编辑
请求该信息的来源。虽然这只是我脑海中的信息,但我可以在互联网上找到它的一些参考资料。最突出的是a git changelog提到“T”作为类型变化,“D”作为删除。

编辑2(更新这一点,因为这是我的最高评价答案至今)
正如@PhilipOakley指出,man git-diff-files实际上确实显示出这一信息。

可能的状态字母是:

  • 答:另外一个文件的
  • C:的文件复制到新的一个
  • d:文件
  • M的删除:修改文件的内容或模式
  • R:重命名文件
  • T:更改文件类型
  • U:文件是未合并(必须完成合并可以提交之前)
  • X:“未知”变型(最有可能的一个bug,请报告)

尖的通过出@Mat,它也是diff.h,行289:

#define DIFF_STATUS_TYPE_CHANGED 'T' 

而且在wt-status.c,管线282:

case DIFF_STATUS_TYPE_CHANGED: 
    status_printf_more(s, c, _("typechange: %s"), one); 
    break; 
+2

你能否提供一些资料来源? 无论如何,谢谢。 – slinstj 2012-01-01 00:26:37

+0

我已经更新了我的答案。 – 2012-01-01 00:30:22

+3

Git源代码,绕着第282行@sidtj行289 /'wt-status.c'处的'diff.h'。 – Mat 2012-01-01 00:30:30

9

代码字母在git-diff-filesgit-diff-index中列出的--diff-filter选项下。它们包括这些不常见的不在git-status下列出的那些。

它们的类型(即,常规文件,符号链接,子模块,......)改为(牛逼),

git help diff-files msysgit版本1.7.8-preview20111206

相关问题