GIT-CHECK-ATTR(1) Git Manual GIT-CHECK-ATTR(1)

git-check-attr - نمایش اطلاعات gitattributes

git check-attr [--source <tree-ish>] [-a | --all | <attr>...] [--] <pathname>...
git check-attr --stdin [-z] [--source <tree-ish>] [-a | --all | <attr>...]

برای هر pathname، این دستور بررسی می‌کند که آیا هر مشخصه روی آن مسیر به عنوان یک gitattribute در وضعیت unspecified، set یا unset قرار دارد یا خیر.

-a, --all

فهرست کردن تمام مشخصه‌های مرتبط با مسیرهای مشخص‌شده. اگر از این گزینه استفاده شود، مشخصه‌های unspecified در خروجی گنجانده نخواهند شد.

--cached

در نظر گرفتن .gitattributes تنها در نمایه (index)، و نادیده گرفتن درخت کاری (working tree).

--stdin

خواندن مسیرها از ورودی استاندارد، یکی در هر سطر، به جای خواندن از خط فرمان.

-z

قالب خروجی تغییر می‌یابد تا برای ماشین قابل‌تجزیه باشد. اگر --stdin نیز مشخص شده باشد، مسیرهای ورودی به جای نویسه خط جدید با یک نویسه NUL جدا می‌شوند.

--source=<tree-ish>

بررسی مشخصه‌ها بر اساس شیء درختی (tree-ish) مشخص‌شده. معمول است که درخت مبدأ با ذکر یک کامیت، شاخه یا برچسب مرتبط با آن مشخص شود.

--

تفسیر تمام آرگومان‌های قبلی به عنوان مشخصه‌ها و تمام آرگومان‌های بعدی به عنوان مسیرها.

اگر هیچ‌یک از گزینه‌های --stdin، --all یا -- استفاده نشود، اولین آرگومان به عنوان یک مشخصه و باقی آرگومان‌ها به عنوان مسیر در نظر گرفته خواهند شد.

خروجی به این صورت است: <path> COLON SP <attribute> COLON SP <info> LF

مگر اینکه -z اعمال شده باشد، که در این صورت از NUL به عنوان جداکننده استفاده می‌شود: <path> NUL <attribute> NUL <info> NUL

در اینجا <path> مسیر فایل مورد پرس‌وجو، <attribute> مشخصه مورد پرس‌وجو است و <info> می‌تواند یکی از موارد زیر باشد:

unspecified

هنگامی که مشخصه برای مسیر تعریف نشده است.

unset

هنگامی که مشخصه به عنوان نادرست (false) تعریف شده است.

set

هنگامی که مشخصه به عنوان درست (true) تعریف شده است.

<value>

هنگامی که مقداری به مشخصه اختصاص داده شده است.

بافربندی همان‌طور که تحت گزینه GIT_FLUSH در git(1) مستند شده است انجام می‌شود. فراخواننده مسئول جلوگیری از بن‌بست‌های ناشی از پر شدن بیش از حد بافر ورودی یا خواندن از یک بافر خروجی خالی است.

در این مثال‌ها، از فایل .gitattributes زیر استفاده می‌شود:

*.java diff=java -crlf myAttr
NoMyAttr.java !myAttr
README caveat=unspecified
•فهرست کردن یک مشخصه منفرد:
$ git check-attr diff org/example/MyClass.java
org/example/MyClass.java: diff: java
•فهرست کردن چند مشخصه برای یک فایل:
$ git check-attr crlf diff myAttr -- org/example/MyClass.java
org/example/MyClass.java: crlf: unset
org/example/MyClass.java: diff: java
org/example/MyClass.java: myAttr: set
•فهرست کردن تمام مشخصه‌ها برای یک فایل:
$ git check-attr --all -- org/example/MyClass.java
org/example/MyClass.java: diff: java
org/example/MyClass.java: myAttr: set
•فهرست کردن یک مشخصه برای چند فایل:
$ git check-attr myAttr -- org/example/MyClass.java org/example/NoMyAttr.java
org/example/MyClass.java: myAttr: set
org/example/NoMyAttr.java: myAttr: unspecified
•همه مقادیر به یک اندازه بدون ابهام نیستند:
$ git check-attr caveat README
README: caveat: unspecified

gitattributes(5).

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

2026-06-29 Git 2.55.0