'\" t .\" Title: git-ls-files .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 2026-06-29 .\" Manual: دستورات عمومی کاربر .\" Source: Git 2.55.0 .\" Language: Persian .\" .TH "GIT\-LS\-FILES" "1" "2026\-06\-29" "Git 2\&.55\&.0" "دستورات عمومی کاربر" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" git-ls-files \- نمایش اطلاعات مربوط به فایل‌های موجود در ایندکس و درخت کاری .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fIgit ls\-files\fR [\-z] [\-t] [\-v] [\-f] [\-c|\-\-cached] [\-d|\-\-deleted] [\-o|\-\-others] [\-i|\-\-ignored] [\-s|\-\-stage] [\-u|\-\-unmerged] [\-k|\-\-killed] [\-m|\-\-modified] [\-\-resolve\-undo] [\-\-directory [\-\-no\-empty\-directory]] [\-\-eol] [\-\-deduplicate] [\-x |\-\-exclude=] [\-X |\-\-exclude\-from=] [\-\-exclude\-per\-directory=] [\-\-exclude\-standard] [\-\-error\-unmatch] [\-\-with\-tree=] [\-\-full\-name] [\-\-recurse\-submodules] [\-\-abbrev[=]] [\-\-format=] [\-\-] [\&...] .fi .sp .SH "توضیحات (DESCRIPTION)" .sp این دستور فهرست فایل‌های موجود در ایندکس را با فهرست واقعی دایرکتوری کاری ادغام می‌کند و ترکیب‌های مختلفی از این دو را نمایش می‌دهد\&. .sp می‌توان از چندین فلگ برای تعیین اینکه کدام فایل‌ها نمایش داده شوند استفاده کرد، و در صورتی که چندین مدخل در ایندکس وجود داشته باشد یا چندین وضعیت برای گزینه‌های انتخاب فایل مربوطه صدق کند، ممکن است هر فایل چندین بار چاپ شود\&. .SH "گزینه‌ها (OPTIONS)" .PP \-c, \-\-cached .RS 4 نمایش تمام فایل‌های کَش‌شده در ایندکس گیت، یعنی تمام فایل‌های ردگیری‌شده\&. (در صورتی که هیچ‌یک از گزینه‌های \-c/\-s/\-d/\-o/\-u/\-k/\-m/\-\-resolve\-undo مشخص نشده باشند، این گزینه پیش‌فرض است\&.) .RE .PP \-d, \-\-deleted .RS 4 نمایش فایل‌هایی با حذف آماده‌سازی‌نشده (unstaged deletion) .RE .PP \-m, \-\-modified .RS 4 نمایش فایل‌هایی با تغییرات آماده‌سازی‌نشده (توجه داشته باشید که یک حذف آماده‌سازی‌نشده نیز یک تغییر آماده‌سازی‌نشده به حساب می‌آید) .RE .PP \-o, \-\-others .RS 4 نمایش فایل‌های دیگر (یعنی ردگیری‌نشده) در خروجی .RE .PP \-i, \-\-ignored .RS 4 نمایش فقط فایل‌های نادیده‌گرفته‌شده (ignored) در خروجی\&. باید همراه با یکی از گزینه‌های صریح \fI\-c\fR یا \fI\-o\fR استفاده شود\&. هنگام نمایش فایل‌های موجود در ایندکس (یعنی زمان استفاده همراه با \fI\-c\fR)، فقط فایل‌هایی چاپ می‌شوند که با یک الگوی استثنا مطابقت دارند\&. هنگام نمایش فایل‌های «دیگر» (یعنی زمان استفاده همراه با \fI\-o\fR)، فقط فایل‌هایی نمایش داده می‌شوند که با یک الگوی استثنا مطابقت دارند\&. قواعد نادیده‌گیری استاندارد به‌طور خودکار فعال نمی‌شوند؛ بنابراین، حداقل یکی از گزینه‌های \fB\-\-exclude*\fR الزامی است\&. .RE .PP \-s, \-\-stage .RS 4 نمایش بیت‌های حالت (mode bits)، نام شیء و شماره مرحله (stage) محتویات آماده‌سازی‌شده در خروجی\&. .RE .PP \-\-directory .RS 4 اگر یک دایرکتوری به طور کامل به عنوان «دیگر» طبقه‌بندی شده باشد، فقط نام آن (همراه با اسلش در انتها) را نمایش می‌دهد و کل محتویات آن را نشان نمی‌دهد\&. بدون \-o/\-\-others هیچ تاثیری ندارد\&. .RE .PP \-\-no\-empty\-directory .RS 4 دایرکتوری‌های خالی را فهرست نکن\&. بدون \-\-directory هیچ تاثیری ندارد\&. .RE .PP \-u, \-\-unmerged .RS 4 نمایش اطلاعات فایل‌های ادغام‌نشده در خروجی، بدون نمایش سایر فایل‌های ردگیری‌شده (گزینه \-\-stage را اجباری می‌کند و \-\-cached را لغو می‌کند)\&. .RE .PP \-k, \-\-killed .RS 4 نمایش فایل‌های ردگیری‌نشده روی سیستم‌فایل که به دلیل تداخل فایل/دایرکتوری باید حذف شوند تا فایل‌های ردگیری‌شده بتوانند روی سیستم‌فایل نوشته شوند\&. .RE .PP \-\-resolve\-undo .RS 4 نمایش فایل‌هایی که دارای اطلاعات resolve\-undo در ایندکس هستند به همراه اطلاعات resolve\-undo آن‌ها\&. (اطلاعات resolve\-undo همان چیزی است که برای پیاده‌سازی «git checkout \-m $PATH» استفاده می‌شود، یعنی برای ایجاد مجدد تداخل‌های ادغامی که به طور تصادفی حل شده بودند) .RE .PP \-z .RS 4 خاتمه خطوط با \e0 در خروجی و عدم قرار دادن نام فایل‌ها در گیومه\&. برای اطلاعات بیشتر بخش خروجی (OUTPUT) را در ادامه ببینید\&. .RE .PP \-\-deduplicate .RS 4 هنگامی که فقط نام فایل‌ها نمایش داده می‌شود، موارد تکراری را که ممکن است ناشی از وجود چندین مرحله (stage) در حین ادغام باشند، یا به دلیل تعیین همزمان گزینه‌های \fB\-\-deleted\fR و \fB\-\-modified\fR رخ دهند، حذف می‌کند\&. هنگامی که هر یک از گزینه‌های \fB\-t\fR، \fB\-\-unmerged\fR یا \fB\-\-stage\fR در حال استفاده باشد، این گزینه هیچ تاثیری ندارد\&. .RE .PP \-x , \-\-exclude= .RS 4 نادیده گرفتن فایل‌های ردگیری‌نشده‌ای که با pattern مطابقت دارند\&. توجه داشته باشید که pattern یک الگوی جانشین شل (shell wildcard) است\&. برای اطلاعات بیشتر بخش الگوهای استثنا (EXCLUDE PATTERNS) را در ادامه ببینید\&. .RE .PP \-X , \-\-exclude\-from= .RS 4 خواندن الگوهای استثنا از ؛ ۱ الگو در هر سطر\&. .RE .PP \-\-exclude\-per\-directory= .RS 4 خواندن الگوهای استثنای اضافی در که فقط برای آن دایرکتوری و زیردایرکتوری‌های آن اعمال می‌شوند\&. اگر در حال تلاش برای شبیه‌سازی نحوه کارکرد دستورات Porcelain هستید، استفاده از گزینه \fB\-\-exclude\-standard\fR به جای این گزینه ساده‌تر و جامع‌تر است\&. .RE .PP \-\-exclude\-standard .RS 4 افزودن استثناهای استاندارد گیت: \&.git/info/exclude، \&.gitignore در هر دایرکتوری، و فایل استثناهای سراسری کاربر\&. .RE .PP \-\-error\-unmatch .RS 4 اگر هر در ایندکس ظاهر نشود، با آن به عنوان یک خطا برخورد کن (مقدار ۱ را برمی‌گرداند)\&. .RE .PP \-\-with\-tree= .RS 4 هنگام استفاده از \-\-error\-unmatch برای بسط آرگومان‌های ارائه‌شده توسط کاربر (یعنی الگوی مسیر) به مسیرها، وانمود می‌کند مسیرهایی که از زمان مشخص‌شده در ایندکس حذف شده‌اند، همچنان وجود دارند\&. استفاده از این گزینه همراه با گزینه‌های \fB\-s\fR یا \fB\-u\fR هیچ معنا و کاربردی ندارد\&. .RE .PP \-t .RS 4 نمایش برچسب‌های وضعیت همراه با نام فایل‌ها\&. توجه داشته باشید که برای اهداف اسکریپت‌نویسی، \fBgit-status\fR(1) \fB\-\-porcelain\fR و \fBgit-diff-files\fR(1) \fB\-\-name\-status\fR تقریباً همیشه گزینه‌های بهتری هستند؛ کاربران باید برای گزینه‌های کاربرپسندتر به \fBgit-status\fR(1) \fB\-\-short\fR یا \fBgit-diff\fR(1) \fB\-\-name\-status\fR نگاه کنند\&. .sp این گزینه دلیلی را برای نمایش هر نام فایل در قالب یک برچسب وضعیت ارائه می‌دهد (که پس از آن یک فاصله و سپس نام فایل می‌آید)\&. برچسب‌های وضعیت همگی تک‌نویسه‌ای از فهرست زیر هستند: .PP H .RS 4 فایل ردگیری‌شده‌ای که نه ادغام‌نشده است و نه skip\-worktree .RE .PP S .RS 4 فایل ردگیری‌شده‌ای که skip\-worktree است .RE .PP M .RS 4 فایل ردگیری‌شده‌ای که ادغام‌نشده است .RE .PP R .RS 4 فایل ردگیری‌شده با حذف آماده‌سازی‌نشده .RE .PP C .RS 4 فایل ردگیری‌شده با تغییرات آماده‌سازی‌نشده .RE .PP K .RS 4 مسیرهای ردگیری‌نشده‌ای که بخشی از تداخل‌های فایل/دایرکتوری هستند و مانع از چک‌اوت فایل‌های ردگیری‌شده می‌شوند .RE .PP ? .RS 4 فایل ردگیری‌نشده .RE .PP U .RS 4 فایل با اطلاعات resolve\-undo .RE .RE .PP \-v .RS 4 مشابه \fB\-t\fR، اما برای فایل‌هایی که به عنوان \fIassume unchanged\fR علامت‌گذاری شده‌اند از حروف کوچک استفاده می‌کند (نگاه کنید به \fBgit-update-index\fR(1))\&. .RE .PP \-f .RS 4 مشابه \fB\-t\fR، اما برای فایل‌هایی که به عنوان \fIfsmonitor valid\fR علامت‌گذاری شده‌اند از حروف کوچک استفاده می‌کند (نگاه کنید به \fBgit-update-index\fR(1))\&. .RE .PP \-\-full\-name .RS 4 هنگامی که از یک زیردایرکتوری اجرا می‌شود، دستور معمولاً مسیرها را نسبت به دایرکتوری فعلی خروجی می‌دهد\&. این گزینه خروجی مسیرها را مجبور می‌کند که نسبت به دایرکتوری ریشه پروژه خروجی داده شوند\&. .RE .PP \-\-recurse\-submodules .RS 4 دستور ls\-files را به طور بازگشتی روی هر ساب‌ماژول فعال در مخزن فراخوانی می‌کند\&. در حال حاضر فقط از حالت‌های \-\-cached و \-\-stage پشتیبانی می‌شود\&. .RE .PP \-\-abbrev[=] .RS 4 به جای نمایش خطوط کامل ۴۰ بایتی هگزادسیمال شیء، کوتاه‌ترین پیشوندی را نمایش می‌دهد که حداقل \fI\fR رقم هگزادسیمال طول داشته باشد و به طور یکتا به شیء ارجاع دهد\&. تعداد ارقام غیرپیش‌فرض را می‌توان با \-\-abbrev= مشخص کرد\&. .RE .PP \-\-debug .RS 4 پس از هر خط که فایلی را توصیف می‌کند، داده‌های بیشتری درباره مدخل کَش آن اضافه کن\&. هدف این است که تا جای ممکن اطلاعات برای بررسی دستی نمایش داده شود؛ قالب دقیق ممکن است در هر زمان تغییر کند\&. .RE .PP \-\-eol .RS 4 نمایش و فایل‌ها\&. مقدار شناسه محتوای فایلی است که گیت زمانی که مشخصه «text» برابر با «auto» باشد (یا تنظیم نشده باشد و core\&.autocrlf نادرست نباشد) از آن استفاده می‌کند\&. مقدار یکی از مقادیر «\-text»، «none»، «lf»، «crlf»، «mixed» یا «» است\&. .sp «» به این معناست که فایل یک فایل معمولی نیست، در ایندکس نیست یا در درخت کاری قابل دسترسی نیست\&. .sp مقدار مشخصه‌ای است که هنگام چک‌اوت یا کامیت کردن استفاده می‌شود؛ این مقدار یکی از مقادیر «»، «\-text»، «text»، «text=auto»، «text eol=lf» یا «text eol=crlf» است\&. از گیت ۲.۱۰ به بعد مقادیر «text=auto eol=lf» و «text=auto eol=crlf» پشتیبانی می‌شوند\&. .sp برای فایل‌های معمولی، هم در ایندکس («i/») و هم در درخت کاری («w/») نمایش داده می‌شوند، و به دنبال آن‌ها («attr/») می‌آید\&. .RE .PP \-\-sparse .RS 4 اگر ایندکس از نوع تنک (sparse) باشد، دایرکتوری‌های تنک را بدون بسط دادن به فایل‌های درونشان نمایش می‌دهد\&. دایرکتوری‌های تنک با یک اسلش در انتها نمایش داده می‌شوند، مانند «x/» برای یک دایرکتوری تنک «x»\&. .RE .PP \-\-format= .RS 4 رشته‌ای که مقدار \fB%\fR(\fBfieldname\fR) را از نتیجه‌ای که نمایش داده می‌شود جای‌گذاری می‌کند\&. همچنین \fB%%\fR را به \fB%\fR، و \fB%xXX\fR را (که در آن \fBXX\fR ارقام هگزادسیمال هستند) به نویسه‌ای با کد هگزادسیمال \fBXX\fR جای‌گذاری می‌کند؛ برای مثال \fB%x00\fR به \fB\e0\fR (NUL)، \fB%x09\fR به \fB\et\fR (TAB) و %x0a به \fB\en\fR (LF) تبدیل می‌شود\&. گزینه \-\-format نمی‌تواند با \fB\-s\fR، \fB\-o\fR، \fB\-k\fR، \fB\-t\fR، \fB\-\-resolve\-undo\fR و \fB\-\-eol\fR ترکیب شود\&. .RE .PP \-\- .RS 4 دیگر هیچ آرگومانی را به عنوان گزینه تفسیر نکن\&. .RE .PP .RS 4 فایل‌هایی که باید نمایش داده شوند\&. اگر فایلی داده نشود، تمامی فایل‌هایی که با سایر معیارهای مشخص‌شده مطابقت دارند نمایش داده می‌شوند\&. .RE .SH "خروجی (OUTPUT)" .sp دستور \fIgit ls\-files\fR صرفاً نام فایل‌ها را خروجی می‌دهد، مگر اینکه \fB\-\-stage\fR مشخص شده باشد که در این صورت خروجی آن به این صورت خواهد بود: .sp .if n \{\ .RS 4 .\} .nf [ ] .fi .if n \{\ .RE .\} .sp دستور \fIgit ls\-files \-\-eol\fR به این شکل نمایش می‌دهد: .nf i/w/attr/ .fi .sp دستورهای \fIgit ls\-files \-\-unmerged\fR و \fIgit ls\-files \-\-stage\fR می‌توانند برای بررسی اطلاعات تفصیلی درباره مسیرهای ادغام‌نشده استفاده شوند\&. .sp برای یک مسیر ادغام‌نشده، ایندکس به جای ثبت یک جفت واحد mode/SHA\-1، حداکثر تا سه جفت از این دست را ثبت می‌کند؛ یکی از درخت O در مرحله ۱، یکی از A در مرحله ۲، و یکی از B در مرحله ۳\&. این اطلاعات می‌تواند توسط کاربر (یا دستورات porcelain) برای مشاهده آنچه که باید در نهایت در آن مسیر ثبت شود استفاده شود\&. (برای اطلاعات بیشتر در مورد وضعیت، \fBgit-read-tree\fR(1) را ببینید) .sp بدون گزینه \fB\-z\fR، نام مسیرهایی با نویسه‌های «غیرعادی» همان‌طور که برای متغیر پیکربندی \fBcore\&.quotePath\fR توضیح داده شده است در گیومه قرار می‌گیرند (نگاه کنید به \fBgit-config\fR(1))\&. با استفاده از \fB\-z\fR، نام فایل عینا خروجی داده می‌شود و انتهای خط با یک بایت NUL خاتمه می‌یابد\&. .sp امکان چاپ در یک قالب سفارشی با استفاده از گزینه \fB\-\-format\fR وجود دارد، که می‌تواند فیلدهای مختلف را با استفاده از نمادگذاری \fB%\fR(\fBfieldname\fR) جای‌گذاری کند\&. برای مثال، اگر فقط فیلدهای «objectname» و «path» برایتان مهم است، می‌توانید دستور را با یک «\-\-format» مشخص به این شکل اجرا کنید: .sp .if n \{\ .RS 4 .\} .nf git ls\-files \-\-format=\*(Aq%(objectname) %(path)\*(Aq .fi .if n \{\ .RE .\} .SH "نام‌های فیلد (FIELD NAMES)" .sp نحوه نمایش هر مسیر را می‌توان با استفاده از گزینه \fB\-\-format=\fR\fI\fR سفارشی‌سازی کرد، که در آن %(fieldname) در رشته برای جنبه‌های گوناگون مدخل ایندکس جای‌گذاری می‌شود\&. «fieldname»های زیر قابل درک هستند: .PP objectmode .RS 4 حالت (mode) فایل که در ایندکس ثبت شده است\&. .RE .PP objecttype .RS 4 نوع شیء (object type) فایل که در ایندکس ثبت شده است\&. .RE .PP objectname .RS 4 نام شیء فایل (شناسه شیء) که در ایندکس ثبت شده است\&. .RE .PP objectsize[:padded] .RS 4 اندازه شیء فایل که در ایندکس ثبت شده است (اگر شیء یک \fBcommit\fR یا \fBtree\fR باشد، «\-» نمایش داده می‌شود)\&. همچنین از قالب پدشده (فاصله‌دار) اندازه با «%(objectsize:padded)» پشتیبانی می‌کند\&. .RE .PP stage .RS 4 مرحله (stage) فایل که در ایندکس ثبت شده است\&. .RE .PP eolinfo:index, eolinfo:worktree .RS 4 مقدار (توضیحات مربوط به گزینه \fB\-\-eol\fR را ببینید) محتویات موجود در ایندکس یا در درخت کاری برای آن مسیر\&. .RE .PP eolattr .RS 4 مقدار (توضیحات مربوط به گزینه \fB\-\-eol\fR را ببینید) که برای آن مسیر اعمال می‌شود\&. .RE .PP path .RS 4 نام مسیر (pathname) فایل که در ایندکس ثبت شده است\&. .RE .SH "الگوهای استثنا (EXCLUDE PATTERNS)" .sp دستور \fIgit ls\-files\fR می‌تواند هنگام پیمایش درخت دایرکتوری و پیدا کردن فایل‌ها برای نمایش (در زمانی که فلگ‌های \-\-others یا \-\-ignored مشخص شده‌اند)، از فهرستی از «الگوهای استثنا» استفاده کند\&. صفحه راهنمای \fBgitignore\fR(5) قالب الگوهای استثنا را مشخص می‌کند\&. .sp این الگوهای استثنا را می‌توان به ترتیب از مکان‌های زیر مشخص کرد: .sp .RS 4 .ie n \{\ \h'-04' 1.\h'+01'\c .\} .el \{\ .sp -1 .IP " 1." 4.2 .\} فلگ خط فرمان \-\-exclude= یک الگوی تکی را مشخص می‌کند\&. الگوها دقیقاً به همان ترتیبی که در خط فرمان ظاهر می‌شوند اولویت‌بندی می‌شوند\&. .RE .sp .RS 4 .ie n \{\ \h'-04' 2.\h'+01'\c .\} .el \{\ .sp -1 .IP " 2." 4.2 .\} فلگ خط فرمان \-\-exclude\-from= فایلی حاوی فهرستی از الگوها را مشخص می‌کند\&. الگوها به همان ترتیبی که در فایل ظاهر می‌شوند اولویت‌بندی می‌شوند\&. .RE .sp .RS 4 .ie n \{\ \h'-04' 3.\h'+01'\c .\} .el \{\ .sp -1 .IP " 3." 4.2 .\} فلگ خط فرمان \-\-exclude\-per\-directory= نام فایل موجود در هر دایرکتوری را که \fIgit ls\-files\fR بررسی می‌کند مشخص می‌سازد، که به طور معمول \fB\&.gitignore\fR است\&. فایل‌های موجود در دایرکتوری‌های عمیق‌تر اولویت دارند\&. الگوها دقیقاً به همان ترتیبی که در فایل‌ها ظاهر می‌شوند اولویت‌بندی می‌شوند\&. .RE .sp الگویی که در خط فرمان با \-\-exclude مشخص شود یا از فایل مشخص‌شده با \-\-exclude\-from خوانده شود، نسبت به ریشه درخت دایرکتوری در نظر گرفته می‌شود\&. الگویی که از یک فایل مشخص‌شده توسط \-\-exclude\-per\-directory خوانده شود، نسبت به دایرکتوری‌ای در نظر گرفته می‌شود که فایل الگو در آن قرار دارد\&. .sp به طور کلی، هر گاه بخواهید قواعد استثنا به همان شکلی اعمال شوند که دستورات Porcelain اعمال می‌کنند، باید بتوانید از \fB\-\-exclude\-standard\fR استفاده کنید\&. برای شبیه‌سازی آنچه \fB\-\-exclude\-standard\fR مشخص می‌کند، می‌توانید \fB\-\-exclude\-per\-directory=\&.gitignore\fR را بدهید، و سپس موارد زیر را مشخص کنید: .sp .RS 4 .ie n \{\ \h'-04' 1.\h'+01'\c .\} .el \{\ .sp -1 .IP " 1." 4.2 .\} فایل مشخص‌شده توسط متغیر پیکربندی \fBcore\&.excludesfile\fR (در صورت وجود)، یا فایل \fB$XDG_CONFIG_HOME/git/ignore\fR\&. .RE .sp .RS 4 .ie n \{\ \h'-04' 2.\h'+01'\c .\} .el \{\ .sp -1 .IP " 2." 4.2 .\} فایل \fB$GIT_COMMON_DIR/info/exclude\fR\&. .RE .sp از طریق گزینه \fB\-\-exclude\-from=\fR\&. .SH "همچنین ببینید (SEE ALSO)" .sp \fBgit-read-tree\fR(1)، \fBgitignore\fR(5) .SH "گیت (GIT)" .sp بخشی از مجموعه \fBgit\fR(1)