В ruby ​​/ grit, как получить список файлов, измененных в конкретном коммите? - PullRequest
1 голос
/ 09 февраля 2011

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

git show --pretty = "format:" --name-only (sha)

Но как я могу сделать это через Grit врубин

Ответы [ 2 ]

1 голос
/ 09 февраля 2011

Вы можете использовать your_commit.diffs, который возвращает массив Grit::Diff экземпляров. Grit::Diff имеет свойства a_path и b_path.

Пример кода (не проверен):

paths = [];
@commit.diffs.each do |diff|
    paths += [diff.a_path, diff.b_path]
end
paths.uniq!
0 голосов
/ 12 апреля 2012

Поскольку модуль Grit Git использует method_missing для оболочки, вы также можете попробовать:

grit.git.show ({: pretty =>: format,: name_only => true}, sha)

...