Можно ли выполнить поиск файла в удаленном хранилище, не клонировав его локально?
В настоящее время краткий ответ - "Нет".
Пока ls-remote
может показаться многообещающим, в нем перечислены только ссылки , а не файлы.
Вы также не можете комбинировать команды git так, как вы пытаетесь (если только эти команды не поддерживают такие комбинации).
В дополнение к работе только с ссылками, попытка объединить ls-remote
с ls-files
ничего не возвращает в том, что запись ls-files
в командной строке интерпретируется командой ls-remote
как ограничивающаявыводит только те ссылки, которые соответствуют "ls-files" (или "* / mixin.js").
Нет ни одного, поэтому вы не получите никакого вывода.
Если вас беспокоитразмер репозитория, который вам нужен clone
, чтобы выполнять поиск локально, и его интересует только последняя версия репозитория, и он не касается файлов, которые могли существовать в истории, но не являютсядольше присутствует и т. д., конечно, вы можете ограничить clone
самой последней ревизией, чтобы избежать клонирования полного репо и истории, используя параметр --depth
, например:
git clone --depth=1 https://github.com/Vincit/objection.js.git
клонировать, но это уменьшает количество работы / времени, затрачиваемого на это.