GIT: измененные имена файлов с определенным расширением - PullRequest
3 голосов
/ 19 января 2011

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

git diff --name-only

Но много раз я получаю много файлов, которые мне сейчас не нужны,Например, если я загружаю на свой сервер PHP, я обычно просто хочу список файлов .php.Я попробовал это:

git diff --name-only **/*.php

Но, к сожалению, он показывает мне только файлы в первом подкаталоге.Похоже, это не интерпретирует двойную звезду как рекурсивную.

Есть идеи?

Ответы [ 3 ]

9 голосов
/ 19 января 2011

просто используйте grep:

git diff --name-only | grep .php
3 голосов
/ 19 января 2011
git diff --name-only '**/*.php'

(обратите внимание на кавычки)

Редактировать

Большинство оболочек POSIX не поддерживают этот шаблон.Из вашего комментария я понял, что git тоже не может (сейчас я не могу проверить).

Обходной путь может быть

git diff --name-only $(find . -name \*.php)
1 голос
/ 15 ноября 2018

Используйте кавычки, чтобы получить git для выполнения фильтра:

git diff --name-only "*.php"

...