git-ls-remote - فهرست
کردن مراجع
موجود در یک
مخزن
دوردست
git ls-remote [--branches] [--tags] [--refs] [--upload-pack=<exec>]
[-q | --quiet] [--exit-code] [--get-url] [--sort=<key>]
[--symref] [<repository> [<patterns>...]]
مراجع
موجود در یک
مخزن
دوردست (remote) را
به همراه
شناسههای
کامیت
مربوط به
آنها
نمایش
میدهد.
-b, --branches, -t, --tags
به ترتیب
محدود کردن
خروجی تنها
به
شاخههای
محلی و
تگهای
محلی. این
گزینهها
با یکدیگر
مانعةالجمع
نیستند؛
هنگامی که
هر دو مشخص
شوند،
مراجع
ذخیرهشده
در refs/heads و refs/tags
نمایش داده
میشوند.
توجه داشته
باشید که --heads
و -h
مترادفهای
منسوخشده
برای --branches و -b
هستند و
ممکن است در
آینده حذف
شوند.
همچنین
توجه داشته
باشید که
اجرای git ls-remote -h
بدون هیچ
آرگومان
دیگری در خط
فرمان،
پیام
راهنما را
نمایش
میدهد که
با سایر
زیردستورهای
گیت سازگار
است.
--refs
عدم
نمایش
تگهای
پوستهگیریشده
(peeled tags) یا
شبهمراجع
مانند 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
هنگام
نمایش یک
مرجع
نمادین (symbolic ref)،
علاوه بر
شیء
اشارهشده
توسط آن،
مرجع
زیربنایی
اشارهشده
را نیز نشان
میدهد. در
حال حاضر، upload-pack
تنها مرجع
نمادین HEAD را
نشان
میدهد،
بنابراین
تنها موردی
خواهد بود
که توسط ls-remote
نمایش داده
میشود.
--sort=<key>
مرتبسازی
بر اساس
کلید
دادهشده.
برای
مرتبسازی
نزولی،
پیشوند
- را
اضافه کنید.
از "
version:refname" یا
"
v:refname"
پشتیبانی
میکند (با
نامهای تگ
به عنوان
نسخه رفتار
میشود).
ترتیب
مرتبسازی
"
version:refname" همچنین
میتواند
تحت تأثیر
متغیر
پیکربندی
"versionsort.suffix" قرار
گیرد. برای
گزینههای
مرتبسازی
بیشتر به
git-for-each-ref(1) مراجعه
کنید، اما
توجه داشته
باشید که
کلیدهایی
مانند
committerdate که
نیازمند
دسترسی به
خود اشیاء
هستند،
برای
مراجعی که
اشیاء
آنها هنوز
از مخزن
دوردست
دریافت
نشدهاند
کار
نخواهند
کرد و خطای
missing object خواهند
داد.
-o <option>, --server-option=<option>
ارسال
رشته
دادهشده
به کارساز
(سرور) هنگام
برقراری
ارتباط با
نسخه ۲
پروتکل.
رشته
دادهشده
نباید حاوی
نویسه NUL یا LF
باشد.
هنگامی که
چندین
--server-option=<option> مشخص
شود، همه
آنها به
ترتیبی که
در خط فرمان
ذکر
شدهاند به
سمت دیگر
ارسال
میشوند.
اگر هیچ
--server-option=<option> در خط
فرمان مشخص
نشده باشد،
به جای آن
مقادیر
متغیر
پیکربندی
remote.<name>.serverOption
استفاده
میشود.
<repository>
مخزن
«دوردست»
برای
پرسوجو.
این
پارامتر
میتواند
یک نشانی URL یا
نام یک مخزن
دوردست
باشد
(بخشهای GIT URLS و
REMOTES در
git-fetch(1) را
ببینید).
<patterns>...
در صورت
عدم تعیین،
تمامی
مراجع، پس
از اعمال
فیلترهای
--heads
و
--tags نشان
داده
میشوند.
هنگامی که
<patterns>... مشخص
شوند، تنها
مراجعی که
با یک یا چند
الگوی
ارائهشده
مطابقت
دارند
نمایش
مییابند.
هر الگو به
صورت یک glob
تفسیر
میشود (به
مدخل
glob در
gitglossary(7) نگاه
کنید) که با
«بخش
انتهایی»
یک مرجع
مطابقت
داده
میشود؛ یا
از ابتدای
مرجع
(بنابراین
نام کاملی
مانند
refs/heads/foo
مطابقت
دارد) یا از
جداکننده
اسلش
(بنابراین
bar
با
refs/heads/bar
مطابقت
دارد اما با
refs/heads/foobar مطابقت
ندارد).
خروجی در
قالب زیر
است:
هنگام
نمایش یک تگ
حاشیهنویسیشده
(annotated tag)، مگر
اینکه --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
•تنها
فهرست کردن
تگهای
منطبق بر
الگوی
جانشین (wildcard)
دادهشده:
$ 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^{}