Подтвердить что ты не робот

Что означает "Т" в "состоянии git"? (это не на странице руководства)

Когда я набираю git status, я вижу:

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

Что означает T git status?

Я пробовал man git-status (я думаю, что он должен быть там, но нет).

4b9b3361

Ответ 1

Это означает, что тип файла изменился. Например, символическая ссылка, которая стала обычным файлом.

Насколько я знаю, это относится только к символическим ссылкам, подмодулям и обычным файлам

Edit
Для этой информации был запрошен источник. Хотя это просто информация, которая в моей голове, я смог найти несколько ссылок на нее в Интернете. Наиболее заметным был a git changelog, в котором упоминается "T" как изменение типа, а "D" - как удаление.

Изменить 2 (обновление этого, потому что это мой самый высокий рейтинг ответа до сих пор)
Как отметил @PhilipOakley, man git-diff-files действительно показывает эту информацию.

Возможные буквы состояния:

  • A: добавление файла
  • C: копирование файла в новый
  • D: удаление файла
  • M: изменение содержимого или режима файла
  • R: переименование файла
  • T: изменение типа файла
  • U: файл не загружен (вы должны выполнить слияние, прежде чем оно может быть выполнено)
  • X: "неизвестный" тип изменения (скорее всего, ошибка, сообщите об этом)

Как указано @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

Кодовые буквы перечислены в git-diff-files и git-diff-index под опцией --diff-filter. Они включают эти менее распространенные, не перечисленные в разделе git-status.

имеют свой тип (т.е. регулярный файл, символическая ссылка, подмодуль,...) изменены (T),

От git help diff-files msysgit версия 1.7.8-preview20111206