Git - рекурсивный список файлов по имени ветки / тега - PullRequest
2 голосов
/ 02 июля 2019

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

версия git 2.21.0

Ниже перечислены мои текущие команды:

- mkdir my-repo && cd my-repo
- git init
- git remote add origin https://remote-repo-url 
- git fetch
- git checkout origin/master -- '*.html'

Как я могу получить только файлы .html так быстро, какЯ могу?Мой репо действительно огромный.Мне нужны только файлы .html.

1 Ответ

1 голос
/ 02 июля 2019

Для существующих my-repo, вы можете попробовать sparse checkout.

echo '*.html' > .git/info/sparse-checkout
git -c core.sparsecheckout=true checkout origin/master

Будут оставлены только HTML-файлы и их родительские папки, а остальные будут скрыты.

Если вам нужно сделать это с нуля, используйте git fetch --depth 1, чтобы минимизировать затраты времени и сети.

Если это обычная задача с нуля, вы можете заранее создать зеркальный клон, чтобы сэкономить время и пространство для будущих задач.

git clone --mirror https://remote-repo-url -- /path/to/mirror

А для рутинного задания

git clone https://remote-repo-url --reference-if-able /path/to/mirror --depth 1 -- my-repo
cd my-repo
echo '*.html' > .git/info/sparse-checkout
git -c core.sparsecheckout=true checkout origin/master
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...