українська мова ▾ Topics ▾ Latest version ▾ git-show-ref last updated in 2.46.0

НАЗВА

git-show-ref - Список посилань у локальному репозиторії

СИНОПСИС

git show-ref [--head] [-d | --dereference]
	     [-s | --hash[=<n>]] [--abbrev[=<n>]] [--branches] [--tags]
	     [--] [<pattern>…​]
git show-ref --verify [-q | --quiet] [-d | --dereference]
	     [-s | --hash[=<n>]] [--abbrev[=<n>]]
	     [--] [<ref>…​]
git show-ref --exclude-existing[=<pattern>]
git show-ref --exists <ref>

ОПИС

Відображає посилання, доступні в локальному репозиторії, разом із відповідними ідентифікаторами комітів. Результати можна фільтрувати за допомогою шаблону, а теги можна розіменувати на ідентифікатори об’єктів. Крім того, його можна використовувати для перевірки існування певного посилання.

За замовчуванням відображає теги, заголовки та віддалені посилання.

Форма --exclude-existing — це фільтр, який виконує зворотну дію. Він зчитує посилання зі stdin, по одному посиланню на рядок, і показує ті, яких немає в локальному репозиторії.

Форму --exists можна використовувати для перевірки існування окремого посилання. Ця форма не перевіряє, чи посилання веде до фактичного об’єкта.

Використання цієї утиліти рекомендується для безпосереднього доступу до файлів у каталозі .git.

ОПЦІЇ

--head

Показати посилання HEAD, навіть якщо воно зазвичай відфільтровується.

--branches
--tags

Обмежити локальними гілками та локальними тегами відповідно. Ці опції не є взаємовиключними; якщо вказано обидва, відображаються посилання, що зберігаються в "refs/heads" та "refs/tags". Зверніть увагу, що --heads є застарілим синонімом --branches і може бути видалений у майбутньому.

-d
--dereference

Також розіменуйте теги в ідентифікатори об’єктів. Вони будуть відображатися з додаванням ^{}.

-s
--hash[=<n>]

Показувати лише OID, а не назву посилання. У поєднанні з --dereference, тег розіменування все одно відображатиметься після OID.

--verify

Увімкнути суворішу перевірку посилань, вимагаючи точний шлях посилання. Окрім повернення коду помилки 1, також буде надруковано повідомлення про помилку, якщо не було вказано --quiet.

--exists

Перевіряє, чи існує вказане посилання. Повертає код виходу 0, якщо воно існує, 2, якщо воно відсутнє, та 1, якщо пошук посилання не вдався з помилкою, відмінною від відсутності посилання.

--abbrev[=<n>]

Скоротіть назву об’єкта. Під час використання --hash не потрібно використовувати --hash --abbrev; підійде --hash=n.

-q
--quiet

Не виводити жодних результатів на стандартний вивід. Можна використовувати з --verify для тихої перевірки існування посилання.

--exclude-existing[=<pattern>]

Зробіть так, щоб git show-ref діяв як фільтр, який зчитує посилання зі stdin у вигляді ^(?:<що-небудь>\s)?<назва_посилання>(?:\^{})?$ та виконує такі дії з кожним з них: (1) видалити ^{} в кінці рядка, якщо такі є; (2) ігнорувати, якщо шаблон надано і не відповідає заголовку refname; (3) попередити, якщо refname не є коректно сформованим refname, та пропустити; (4) ігнорувати, якщо refname є посиланням, яке існує в локальному репозиторії; (5) інакше виведіть рядок.

<pattern>…​

Показати посилання, що відповідають одному або кільком шаблонам. Шаблони збігаються, починаючи з кінця повного імені, і збігаються лише повні частини, наприклад, «master» збігається з «refs/heads/master», «refs/remotes/origin/master», «refs/tags/jedi/master», але не з «refs/heads/mymaster» або «refs/remotes/master/jedi».

ВИХІД

Вивід має формат:

<oid> SP <ref> LF

Наприклад,

$ git show-ref --head --dereference
832e76a9899f560a90ffd62ae2ce83bbeff58f54 HEAD
832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/master
832e76a9899f560a90ffd62ae2ce83bbeff58f54 refs/heads/origin
3521017556c5de4159da4615a39fa4d5d2c279b5 refs/tags/v0.99.9c
6ddc0964034342519a87fe013781abf31c6db6ad refs/tags/v0.99.9c^{}
055e4ae3ae6eb344cbabf2a5256a49ea66040131 refs/tags/v1.0rc4
423325a2d24638ddcc82ce47be5e40be550f4507 refs/tags/v1.0rc4^{}
...

При використанні --hash (а не --dereference), вивід має формат:

<oid> LF

Наприклад,

$ git show-ref --branches --hash
2e3ba0114a1f52b47df29743d6915d056be13278
185008ae97960c8d551adcd9e23565194651b5d1
03adf42c988195b50e1a1935ba5fcbc39b2b029b
...

ПРИКЛАДИ

Щоб показати всі посилання з назвою "master", незалежно від того, чи це теги, заголовки чи щось інше, і незалежно від того, наскільки глибоко вони знаходяться в ієрархії іменування посилань, використовуйте:

	git show-ref master

Це покаже "refs/heads/master", а також "refs/remote/other-repo/master", якщо такі посилання існують.

При використанні прапорця --verify команда вимагає точного шляху:

	git show-ref --verify refs/heads/master

відповідатиме лише точній гілці під назвою "master".

Якщо нічого не відповідає, git show-ref поверне код помилки 1, а у разі перевірки покаже повідомлення про помилку.

Для скриптів ви можете попросити його бути тихим за допомогою прапорця --quiet, що дозволяє вам робити такі речі, як

	git show-ref --quiet --verify -- "refs/heads/$headname" ||
		echo "$headname is not a valid branch"

перевірити, чи існує певна гілка (зверніть увагу, що ми насправді не хочемо показувати жодних результатів, і ми хочемо використовувати повне посилання на неї, щоб не викликати проблему з неоднозначними частковими збігами).

Щоб показати лише теги або лише відповідні заголовки гілок, використовуйте --tags та/або --branches відповідно (використання обох означає, що будуть показані теги та гілки, але не інші випадкові посилання в підкаталозі refs/).

Щоб виконати автоматичне розіменування об’єктів тегів, використовуйте прапорець -d або --dereference, щоб ви могли це зробити

	git show-ref --tags --dereference

щоб отримати список усіх тегів разом із тим, що вони розименують.

ФАЙЛИ

.git/refs/*, .git/packed-refs

GIT

Частина набору git[1]