'\" t .\" Title: git-fsmonitor--daemon .\" Author: [FIXME: author] [see http://www.docbook.org/tdg5/en/html/author] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 2026-06-29 .\" Manual: Git Manual .\" Source: Git 2.55.0 .\" Language: English .\" .TH "GIT\-FSMONITOR\-\-DAEMON" "1" "2026\-06\-29" "Git 2\&.55\&.0" "Git Manual" .\" ----------------------------------------------------------------- .\" * 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-fsmonitor--daemon \- پایشگر توکار سیستم‌فایل .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fIgit fsmonitor\-\-daemon\fR start \fIgit fsmonitor\-\-daemon\fR run \fIgit fsmonitor\-\-daemon\fR stop \fIgit fsmonitor\-\-daemon\fR status .fi .sp .SH "توضیحات (DESCRIPTION)" .sp یک دیمن برای پایش تغییرات فایل‌ها و دایرکتوری‌ها در دایرکتوری کاری با استفاده از امکانات اعلان سیستم‌فایل وابسته به پلتفرم\&. .sp این دیمن مستقیماً با دستوراتی مانند \fBgit\fR \fBstatus\fR با استفاده از رابط \m[blue]\fBsimple IPC\fR\m[]\&\s-2\u[1]\d\s+2 به جای رابط کندتر \fBgithooks\fR(5) ارتباط برقرار می‌کند\&. .sp این دیمن در داخل گیت تعبیه شده است تا نیازی به ابزارهای شخص ثالث نباشد\&. .SH "گزینه‌ها (OPTIONS)" .PP start .RS 4 یک دیمن را در پس‌زمینه راه‌اندازی می‌کند\&. .RE .PP run .RS 4 یک دیمن را در پیش‌زمینه اجرا می‌کند\&. .RE .PP stop .RS 4 در صورت وجود، دیمن در حال اجرا در دایرکتوری کاری فعلی را متوقف می‌کند\&. .RE .PP status .RS 4 اگر دیمنی در حال پایش دایرکتوری کاری فعلی باشد، با وضعیت صفر خارج می‌شود\&. .RE .SH "ملاحظات (REMARKS)" .sp این دیمن یک پردازه با اجرای طولانی‌مدت است که برای پایش یک دایرکتوری کاری منفرد و نگهداری فهرستی از فایل‌ها و پوشه‌های اخیراً تغییریافته به کار می‌رود\&. کارایی دستوراتی مانند \fBgit\fR \fBstatus\fR می‌تواند افزایش یابد اگر تنها خلاصه تغییرات دایرکتوری کاری را درخواست کنند و از پویش دیسک اجتناب نمایند\&. .sp هنگامی که \fBcore\&.fsmonitor\fR روی \fBtrue\fR تنظیم شود (به \fBgit-config\fR(1) مراجعه کنید)، دستوراتی مانند \fBgit\fR \fBstatus\fR تغییرات را از دیمن جویا شده و در صورت لزوم آن را به‌طور خودکار راه‌اندازی می‌کنند\&. .sp برای اطلاعات بیشتر، بخش «File System Monitor» را در \fBgit-update-index\fR(1) ببینید\&. .SH "هشدارها (CAVEATS)" .sp دیمن fsmonitor در حال حاضر اطلاعی از زیرماژول‌ها (submodules) ندارد و رویدادهای سیستم‌فایل را که درون یک زیرماژول رخ می‌دهند فیلتر نمی‌کند\&. اگر دیمن fsmonitor در حال پایش یک مخزن والد باشد و فایلی در دایرکتوری کاری یک زیرماژول تغییر کند، آن تغییر را (به عنوان تغییری در مخزن والد) گزارش می‌دهد\&. با این حال، کلاینت این رویدادهای اضافی را به‌درستی نادیده می‌گیرد، بنابراین عملکرد ممکن است تحت تأثیر قرار گیرد اما نتیجه نادرستی ایجاد نخواهد شد\&. .sp به‌طور پیش‌فرض، دیمن fsmonitor از کار با مخازن متصل به شبکه خودداری می‌کند؛ این رفتار را می‌توان با تنظیم \fBfsmonitor\&.allowRemote\fR به \fBtrue\fR نادیده گرفت\&. با این حال توجه داشته باشید که تضمینی برای کارکرد صحیح دیمن fsmonitor با همه مخازن متصل به شبکه وجود ندارد، بنابراین چنین استفاده‌ای آزمایشی در نظر گرفته می‌شود\&. .sp در Mac OS و لینوکس، ارتباط بین‌پردازه‌ای (IPC) میان دستورات مختلف گیت و دیمن fsmonitor از طریق سوکت دامنه یونیکس (UDS) \(em نوع خاصی از فایل \(em انجام می‌شود که توسط سیستم‌فایل‌های بومی Mac OS و لینوکس پشتیبانی می‌شود، اما در سیستم‌فایل‌های متصل به شبکه، NTFS یا FAT32 پشتیبانی نمی‌شود\&. سیستم‌فایل‌های دیگر ممکن است پشتیبانی لازم را داشته باشند یا نداشته باشند؛ عملکرد دیمن fsmonitor با این سیستم‌فایل‌ها تضمین نمی‌شود و چنین استفاده‌ای آزمایشی تلقی می‌گردد\&. .sp به‌طور پیش‌فرض، سوکت در پوشه \fB\&.git\fR ایجاد می‌شود\&. با این حال، اگر پوشه \fB\&.git\fR روی یک سیستم‌فایل متصل به شبکه باشد، به جای آن در \fB$HOME/\&.git\-fsmonitor\-*\fR ایجاد می‌شود، مگر اینکه خود \fB$HOME\fR روی یک سیستم‌فایل متصل به شبکه باشد که در این صورت باید متغیر پیکربندی \fBfsmonitor\&.socketDir\fR را روی مسیر پوشه‌ای در یک سیستم‌فایل بومی برای ایجاد فایل سوکت تنظیم کنید\&. .sp اگر هیچ‌کدام از پوشه‌های بالا (\fB\&.git\fR، \fB$HOME\fR یا \fBfsmonitor\&.socketDir\fR) روی یک سیستم‌فایل بومی نباشند، دیمن fsmonitor خطایی گزارش می‌دهد که باعث خروج دیمن و دستور در حال اجرای فعلی می‌شود\&. .SS "هشدارهای لینوکس (LINUX CAVEATS)" .sp در لینوکس، دیمن fsmonitor از inotify برای پایش رویدادهای سیستم‌فایل استفاده می‌کند\&. سیستم inotify محدودیت‌هایی به ازای هر کاربر برای تعداد پایش‌هایی که می‌توان ایجاد کرد دارد\&. حد پیش‌فرض معمولاً ۸۱۹۲ پایش به ازای هر کاربر است\&. .sp برای مخازن بزرگ با پوشه‌های بسیار، ممکن است نیاز به افزایش این حد داشته باشید\&. حد فعلی را با دستور زیر بررسی کنید: .sp .if n \{\ .RS 4 .\} .nf cat /proc/sys/fs/inotify/max_user_watches .fi .if n \{\ .RE .\} .sp برای افزایش موقت حد: .sp .if n \{\ .RS 4 .\} .nf sudo sysctl fs\&.inotify\&.max_user_watches=65536 .fi .if n \{\ .RE .\} .sp برای دائمی کردن تغییر، عبارت زیر را به \fB/etc/sysctl\&.conf\fR اضافه کنید: .sp .if n \{\ .RS 4 .\} .nf fs\&.inotify\&.max_user_watches=65536 .fi .if n \{\ .RE .\} .SH "پیکربندی (CONFIGURATION)" .sp تمام موارد زیر در این بخش به‌صورت گزینشی از مستندات \fBgit-config\fR(1) درج شده‌اند\&. محتوا همان چیزی است که در آنجا یافت می‌شود: .PP fsmonitor\&.allowRemote .RS 4 به‌طور پیش‌فرض، دیمن fsmonitor از کار با مخازن متصل به شبکه خودداری می‌کند\&. تنظیم \fBfsmonitor\&.allowRemote\fR روی \fBtrue\fR این رفتار را نادیده می‌گیرد\&. تنها در صورتی لحاظ می‌شود که \fBcore\&.fsmonitor\fR روی \fBtrue\fR تنظیم شده باشد\&. .RE .PP fsmonitor\&.socketDir .RS 4 این گزینه ویژه Mac OS و لینوکس، در صورت تنظیم، پوشه‌ای را مشخص می‌کند که در آن سوکت دامنه یونیکس مورد استفاده برای ارتباط بین دیمن fsmonitor و دستورات مختلف گیت ایجاد شود\&. پوشه باید روی یک سیستم‌فایل بومی قرار داشته باشد\&. تنها زمانی اعمال می‌شود که \fBcore\&.fsmonitor\fR روی \fBtrue\fR تنظیم شده باشد\&. .RE .SH "گیت (GIT)" .sp بخشی از مجموعه \fBgit\fR(1) .SH "نکات (NOTES)" .IP " 1." 4 simple IPC .RS 4 \%file:///usr/share/doc/git-doc/technical/api-simple-ipc.html .RE