GIT-LS-REMOTE(1) Git Manual GIT-LS-REMOTE(1)

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 مطابقت ندارد).

خروجی در قالب زیر است:

<oid> TAB <ref> LF

هنگام نمایش یک تگ حاشیه‌نویسی‌شده (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^{}

git-check-ref-format(1).

بخشی از مجموعه git(1)

2026-06-29 Git 2.55.0