Поиск в удаленном хранилище имен файлов / содержимого - PullRequest
0 голосов
/ 10 октября 2018

Можно ли искать файл в удаленном хранилище, не клонировав его локально?Например, URL-адрес clone для этого проекта , могу ли я найти в основной ветви файл с конкретным именем?Файл, который содержит определенную строку?

git-ls-remote, похоже, что это вроде близко к тому, что я хочу , но объединяя его с git-ls-files или git-grep не работает (сообщение ТАК, показывающее, как использовать их для той же задачи в локальном экземпляре хранилища )

git ls-remote https://github.com/Vincit/objection.js.git ls-files '*/mixin.js'

просто возвращается в командную строку, не печатая вообще никаких выходных данных, ошибок или иного.

1 Ответ

0 голосов
/ 10 октября 2018

Можно ли выполнить поиск файла в удаленном хранилище, не клонировав его локально?

В настоящее время краткий ответ - "Нет".

Пока 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

клонировать, но это уменьшает количество работы / времени, затрачиваемого на это.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...