“ git status”中的“ T”是什么意思?(不在手册页中)


77

当我键入时,git status我看到:

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

到底是什么T git status意思?

我试过了man git-status(我认为应该在那儿,但是没有)。


Answers:


104

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

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

编辑
请求提供此信息的来源。尽管这只是我的脑海中的信息,但我还是可以在Internet上找到一些参考。最突出的一个是git changelog提到“ T”是类型更改,“ D”是删除内容。

编辑2 (更新此内容,因为这是我迄今为止评分最高的答案)
正如@PhilipOakley所指出的,man git-diff-files实际上确实显示了此信息。

可能的状态字母为:

  • 答:添加一个文件
  • C:将文件复制到新文件中
  • D:删除文件
  • M:修改文件的内容或模式
  • R:重命名文件
  • T:更改文件类型
  • U:文件未合并(您必须先完成合并才能提交)
  • X:“未知”更改类型(很可能是错误,请报告)

正如@Mat所指出的,它也在diff.h289行中:

#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
您能提供一些信息来源吗?不管怎么说,还是要谢谢你。
sdlins 2012年

4
Git源代码,diff.h在第289wt-status.c行附近/在第282行附近@sidtj。
2012年

12
@Mat您不是真的从字面上看有点来源吗?;-)
Tom van der Woerdt 2012年

11
:)虽然最终的来源。
2012年

1
@TomvanderWoerdt,谢谢您的消息来源。这对我来说是有效的,因为没有别的。非常感谢。
sdlins 2012年

10

在选项中git-diff-files和选项下列出了代码字母。其中包括未在下方列出的这些较不常见的内容。git-diff-index--diff-filtergit-status

更改其类型(即常规文件,符号链接,子模块等)(T),

git help diff-filesmsysgit版本1.7.8-preview20111206

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.