Русский ▾ Topics ▾ Latest version ▾ git-ls-remote last updated in 2.48.0

НАЗВАНИЕ

git-ls-remote — Вывод списка ссылок во внешнем репозитории

ОБЗОР

git ls-remote [--branches] [--tags] [--refs] [--upload-pack=<запуск>]
	      [-q | --quiet] [--exit-code] [--get-url] [--sort=<ключ>]
	      [--symref] [<репозиторий> [<шаблоны>…]]

ОПИСАНИЕ

Отображает ссылки, доступные во внешнем репозитории, вместе со связанными идентификаторами коммитов.

ПАРАМЕТРЫ

-b
--branches
-t
--tags

Ограничивать только локальными ветками и локальными метками соответственно. Эти параметры не являются взаимоисключающими; если указаны оба, отображаются ссылки, хранящиеся в refs/heads и refs/tags. Обратите внимание, что --heads и -h являются устаревшими синонимами для --branches и -b и могут быть удалены в будущем. Также обратите внимание, что git ls-remote -h, используемый без других аргументов в командной строке, выводит справку, что соответствует другим подкомандам git.

--refs

Не показывать очищенные (peeled) метки или псевдоссылки, такие как HEAD, в выводе.

-q
--quiet

Не выводить URL-адрес внешнего репозитория в stderr.

--upload-pack=<exec>

Указать полный путь к git-upload-pack на внешнем хосте. Это позволяет выводить список ссылок из репозиториев, доступ к которым осуществляется через SSH, и где SSH-демон не использует PATH, настроенный пользователем.

--exit-code

Завершиться с кодом "2", если во внешнем репозитории не найдено ни одной соответствующей ссылки. Обычно команда завершается с кодом "0", чтобы указать, что она успешно связалась с внешним репозиторием, независимо от того, нашла ли она какие-либо соответствующие ссылки.

--get-url

Развернуть URL-адрес заданного внешнего репозитория с учётом любых настроек конфигурации "url.<base>.insteadOf" (см. git-config[1]) и завершиться, не связываясь с внешним репозиторием.

--symref

В дополнение к объекту, на который она указывает, показывать нижележащую ссылку, на которую она указывает, при показе символической ссылки. В настоящее время upload-pack показывает только символическую ссылку HEAD, поэтому она будет единственной, показываемой ls-remote.

--sort=<ключ>

Сортировать на основе указанного ключа. Префикс - сортирует в порядке убывания значения. Поддерживается "version:refname" или "v:refname" (имена меток рассматриваются как версии). Порядок сортировки "version:refname" также может быть изменён переменной конфигурации "versionsort.suffix". Дополнительные параметры сортировки см. в git-for-each-ref[1], но имейте в виду, что ключи, такие как committerdate, требующие доступа к самим объектам, не будут работать для ссылок, чьи объекты ещё не были получены из внешнего репозитория, и приведут к ошибке missing object.

-o <параметр>
--server-option=<параметр>

Передать данную строку на сервер при обмене данными по протоколу версии 2. Данная строка не должна содержать символы NUL или LF.Если параметр --server-option=<параметры> указан несколько раз, то все эти строки будут отправлены другой стороне в том порядке, в котором они указанном в командной строке. Если в командной строке параметр --server-option=<параметры> не задан ни разу, то вместо этого будет использовано значения переменной конфигурации remote.<имя>.serverOption.

<репозиторий>

«Внешний» (remote) репозиторий для запроса. Этот параметр может быть либо URL-адресом, либо именем внешнего репозитория (см. разделы URL-АДРЕСА GIT и ВНЕШНИЕ РЕПОЗИТОРИИ в git-fetch[1]).

<шаблоны>…​

Если не указано, отображаются все ссылки после фильтрации, выполненной с помощью --heads и --tags. Когда указаны <шаблоны>…​, отображаются только ссылки, соответствующие одному или нескольким заданным шаблонам. Каждый шаблон интерпретируется как glob (см. glob в gitglossary[7]), который сопоставляется с «хвостом» ссылки, начиная либо с начала ссылки (поэтому полное имя, такое как refs/heads/foo, соответствует), либо с разделителя-косой черты (поэтому bar соответствует refs/heads/bar, но не refs/heads/foobar).

ВЫВОД

Вывод имеет формат:

<oid> TAB <ссылка> LF

При показе аннотированной метки, если не указан --refs, показываются две такие строки: одна с именем ссылки для самой метки в качестве <ref>, и другая с <ref>, за которым следует ^{}. <oid> во второй строке показывает имя объекта, на который указывает метка.

ПРИМЕРЫ

  • Вывести список всех ссылок (включая символические и псевдоссылки), очищая метки:

    $ git ls-remote
    27d43aaaf50ef0ae014b88bba294f93658016a2e	HEAD
    950264636c68591989456e3ba0a5442f93152c1a	refs/heads/main
    d9ab777d41f92a8c1684c91cfb02053d7dd1046b	refs/heads/next
    d4ca2e3147b409459955613c152220f4db848ee1	refs/tags/v2.40.0
    73876f4861cd3d187a4682290ab75c9dccadbc56	refs/tags/v2.40.0^{}
  • Вывести все ссылки, соответствующие заданным шаблонам:

    $ git ls-remote http://www.kernel.org/pub/scm/git/git.git master seen rc
    5fe978a5381f1fbad26a80e682ddd2a401966740	refs/heads/master
    c781a84b5204fb294c9ccc79f8b3baceeb32c061	refs/heads/seen
  • Вывести только метки, соответствующие заданному шаблону с подстановкой:

    $ git ls-remote --tags http://www.kernel.org/pub/scm/git/git.git v\*
    485a869c64a68cc5795dd99689797c5900f4716d	refs/tags/v2.39.2
    cbf04937d5b9fcf0a76c28f69e6294e9e3ecd7e6	refs/tags/v2.39.2^{}
    d4ca2e3147b409459955613c152220f4db848ee1	refs/tags/v2.40.0
    73876f4861cd3d187a4682290ab75c9dccadbc56	refs/tags/v2.40.0^{}

СМ. ТАКЖЕ

GIT

Является частью пакета git[1]