10

У Mercurial есть команда, чтобы перечислить каждый файл, который есть в хранилище для каждой ревизии:

hg manifest --all

Есть ли эквивалентная команда в Git?

1 ответ1

3

Я абсолютно ужасен в сценариях оболочки, так что это, безусловно, неоптимально, но такого рода вещи могут сделать это для вас, если вы используете bash. Надеюсь, кто-нибудь еще может прийти и почистить его или заменить на что-нибудь получше. Я только протестировал его на своем Mac, так что будьте осторожны.

Он должен печатать все файлы в коммитах, которые являются предками текущего HEAD. Сохраните его в файле manifest.sh где-нибудь на вашем пути:

#!/bin/bash

TFILE=$(mktemp -t git-manifest)

for sha in $(git log --pretty=format:%H)
do
    git ls-tree --name-only --full-tree -r $sha >> $TFILE
done

sort -u $TFILE
rm $TFILE

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .