jgit - git diff на основе расширения файла - PullRequest
0 голосов
/ 02 января 2019

Я использую JGit API (https://www.eclipse.org/jgit/) для доступа к хранилищу git.

В хранилище git я также храню файлы .txt и другие форматы файлов. Я столкнулся с требованием, когдаЯ должен получить diff только из .txt файлов.

В основном я пытаюсь получить эквивалент

git diff master HEAD -- '*.txt'  

Как отфильтровать git diff по расширениям файлов? используя JGit API.

Из этого ответа ( Эквивалент git diff в JGit ) я понял, как получить нормальный diff. Но я хотел бы добавить ограничение расширения файла к этомуно я ничего не мог видеть в DiffCommand документе (https://download.eclipse.org/jgit/site/5.2.0.201812061821-r/apidocs/index.html).

Может кто-нибудь дать какой-нибудь указатель?

1 Ответ

0 голосов
/ 02 января 2019

Если вы используете DiffFormatter, как предложено в Эквивалент git diff в JGit , вы можете указать древовидный фильтр следующим образом:

TreeFilter treeFilter = PathSuffixFilter.create(".txt")

DiffFormatter diffFormatter = ...
diffFormatter.setPathFilter(treeFilter);

В примере используется PathSuffixFilter исключить файлы, заканчивающиеся .txt.

...