Как я могу сделать git показать список файлов, которые отслеживаются?

Вопрос: С помощью командной строки git, как я могу заставить git показать список файлов, которые отслеживаются в репозитории? Лучший ответ: Если вы хотите перечислить все файлы, которые в настоящее время отслеживаются в master ветки, вы можете использовать эту команду: git ls-tree -r master --name-only Если вам нужен список файлов, которые когда-либо существовали (т.е. Включая удаленные

Вопрос:

С помощью командной строки git, как я могу заставить git показать список файлов, которые отслеживаются в репозитории?

Лучший ответ:

Если вы хотите перечислить все файлы, которые в настоящее время отслеживаются в master ветки, вы можете использовать эту команду:

git ls-tree -r master —name-only

Если вам нужен список файлов, которые когда-либо существовали (т.е. Включая удаленные файлы):

git log —pretty=format: —name-only —diff-filter=A | sort — | sed ‘/^$/d’ Ответ №1

Файлы, управляемые git, показаны git ls-files. Проверьте его страницу руководства.

Ответ №2

Принятый ответ показывает только файлы в текущем дереве каталогов. Чтобы показать все отслеженные файлы, которые были зафиксированы (в текущей ветки), используйте

git ls-tree —full-tree —name-only -r HEAD

  • —full-tree заставляет команду выполняться так, как если бы вы находились в корневом каталоге хранилища.
  • -r возвращается в подкаталоги. В сочетании с —full-tree это дает вам все зафиксированные, отслеживаемые файлы.
  • —name-only удаляет информацию SHA/разрешения для случаев, когда вам просто нужны пути к файлам.
  • HEAD указывает, для какой ветки вы хотите получить список отслеживаемых, зафиксированных файлов. Вы можете изменить это на master или любое другое имя ветки, но HEAD – это коммит, который вы уже извлекли.

Это метод из принятого ответа на дубликат вопроса qaru.site/questions/2979/….

Ответ №3

Возможно, вы захотите получить цветной вывод с этим.

Я использую этот однострочный список для отслеживания отслеживаемых файлов и каталогов в текущем каталоге текущей ветки:

ls —group-directories-first —color=auto -d $(git ls-tree $(git branch | grep * | cut -d » » -f2) —name-only)

Возможно, вы захотите добавить его как псевдоним:

alias gl=’ls —group-directories-first —color=auto -d $(git ls-tree $(git branch | grep * | cut -d » » -f2) —name-only)’

Если вы хотите рекурсивно перечислять файлы:

‘ls’ —color=auto -d $(git ls-tree -rt $(git branch | grep * | cut -d » » -f2) —name-only)

И псевдоним:

alias glr=»‘ls’ —color=auto -d $(git ls-tree -rt $(git branch | grep \* | cut -d » » -f2) —name-only)»

Оцените статью
Добавить комментарий