Чтобы ограничить узел из `дерева` с помощью дерева или Git - PullRequest
0 голосов
/ 28 августа 2009

Как вы можете ограничить узел с помощью команды tree?

# 1

Мне нужно регулярно предоставлять дерево файлов моего проекта для моего руководителя. Эти файлы содержат некоторые сторонние компоненты, которые я не хочу показывать в дереве. Я решил эту проблему до сих пор, скопировав файл проекта в tmp, удалив сторонние файлы и запустив tree.

Однако эта процедура становится громоздкой. Я хотел бы получить лучший способ передать дерево моих файлов своему руководителю.

# 2

У меня есть файлы, которые я хочу показать в Git, чтобы Git мог решить эту проблему. Я безуспешно бегаю

 git ls-files --with-tree

Ответы [ 3 ]

1 голос
/ 28 августа 2009

Вы можете указать файлы, которые вы хотите сопоставить и избегать использования общих шаблонов. Из справочной страницы tree :

-P шаблон Список только те файлы, которые соответствуют шаблону подстановки. Примечание: вы должны использовать опцию -a, чтобы также рассмотреть файлы, начинающиеся с точки '.' для сопоставления. Допустимые подстановочные операторы: '*' (любой ноль или более символов), '?' (любой отдельный символ), '[...]' (можно использовать любой отдельный символ, указанный в скобках (необязательно - (тире) для диапазона символов: например: [AZ]) и '[^ ...]' ( любой отдельный символ, не указанный в скобках), а '|' разделяет альтернативные шаблоны.

-I шаблон Не перечисляйте те файлы, которые соответствуют шаблону подстановочных знаков.

В вашем конкретном случае работает

tree -I '3rd*'

должен скрывать каталог с именем '3rd_party', включая подкаталоги и файлы, но при этом разрешать совпадения, такие как 'party_3rd'. Очевидно, что другие файлы и каталоги, не содержащие «3-го» в имени, также будут отображаться как обычно. Я проверил это поведение с деревом v1.5.2.1 в Linux.

0 голосов
/ 28 августа 2009

Вместо изменения команды tree, возможно, было бы лучше поместить сторонние файлы в соседнюю папку, а не в дочернюю папку вашего собственного источника.

0 голосов
/ 28 августа 2009

Можно ставить сторонние инструменты в отдельный подкаталог.

Тогда вам нужно только устранить один узел.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...