'\" t .\" Title: cgitrc .\" Author: [see the "AUTHOR" section] .\" Generator: DocBook XSL Stylesheets vsnapshot .\" Date: 05/05/2026 .\" Manual: cgit .\" Source: cgit .\" Language: English .\" .TH "CGITRC" "5" "05/05/2026" "cgit" "cgit" .\" ----------------------------------------------------------------- .\" * 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)" cgitrc \- پیکربندی زمان اجرای cgit .SH "خلاصه دستور (SYNOPSIS)" .sp پرونده cgitrc شامل تمام تنظیمات زمان اجرای cgit، از جمله فهرست مخازن git است که به‌صورت فهرستی از جفت‌های NAME=VALUE جداشده با خط جدید قالب‌بندی شده‌اند.\& خطوط خالی و خطوطی که با \fI#\fR آغاز می‌شوند نادیده گرفته می‌شوند.\& .SH "محل قرارگیری (LOCATION)" .sp محل پیش‌فرض cgitrc که در زمان کامپایل تعیین شده است، /etc/cgitrc است.\& در زمان اجرا، cgit متغیر محیطی CGIT_CONFIG را بررسی کرده و در صورت تعریف شدن، از مقدار آن استفاده خواهد کرد.\& .SH "تنظیمات سراسری (GLOBAL SETTINGS)" .PP about\-filter .RS 4 دستوری را مشخص می‌کند که برای قالب‌بندی محتوای صفحات درباره (هم در سطح بالا و هم برای هر مخزن) فراخوانی می‌شود.\& این دستور محتوای about\-file را روی STDIN خود و نام فایل را به عنوان آرگومان اول دریافت می‌کند، و STDOUT خروجی دستور به‌صورت عین متن در صفحه درباره گنجانده می‌شود.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "FILTER API".\& .RE .PP agefile .RS 4 مسیری را به نسبت مسیر هر مخزن مشخص می‌کند که می‌تواند برای تعیین تاریخ و زمان جدیدترین کامیت در مخزن استفاده شود.\& خط اول این فایل به عنوان ورودی تابع "parse_date" در libgit استفاده می‌شود.\& قالب زمانی توصیه‌شده "yyyy\-mm\-dd hh:mm:ss" است.\& ممکن است بخواهید این فایل را از طریق یک قلاب post\-receive تولید کنید.\& مقدار پیش‌فرض: "info/web/last\-modified".\& .RE .PP auth\-filter .RS 4 دستوری را مشخص می‌کند که برای احراز هویت دسترسی به مخزن فراخوانی خواهد شد.\& این دستور آرگومان‌های متعددی دریافت کرده و داده‌ها را هم روی stdin و هم stdout برای پردازش احراز هویت دریافت و ارسال می‌کند.\& جزئیات در ادامه این سند آمده است.\& اگر هیچ auth\-filter مشخص نشود، هیچ احراز هویتی انجام نمی‌شود.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "FILTER API".\& .RE .PP branch\-sort .RS 4 فلگی که وقتی روی "age" تنظیم شود، مرتب‌سازی بر اساس تاریخ را در فهرست ارجاع شاخه‌ها فعال می‌کند و وقتی روی "name" تنظیم شود مرتب‌سازی بر اساس نام شاخه را فعال می‌سازد.\& مقدار پیش‌فرض: "name".\& .RE .PP cache\-about\-ttl .RS 4 عددی که طول عمر (TTL) نسخه حافظه موقت (کش) صفحه درباره مخزن را بر حسب دقیقه مشخص می‌کند.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: "15".\& .RE .PP cache\-dynamic\-ttl .RS 4 عددی که طول عمر (TTL) نسخه کش صفحات مخزن که بدون یک SHA1 ثابت بازخوانی می‌شوند را بر حسب دقیقه مشخص می‌کند.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: "5".\& .RE .PP cache\-repo\-ttl .RS 4 عددی که طول عمر (TTL) نسخه کش صفحه خلاصه مخزن را بر حسب دقیقه مشخص می‌کند.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: "5".\& .RE .PP cache\-root .RS 4 مسیری که برای ذخیره مدخل‌های حافظه موقت cgit استفاده می‌شود.\& مقدار پیش‌فرض: "/var/cache/cgit".\& همچنین ببینید: "MACRO EXPANSION".\& .RE .PP cache\-root\-ttl .RS 4 عددی که طول عمر (TTL) نسخه کش صفحه نمایه مخزن را بر حسب دقیقه مشخص می‌کند.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: "5".\& .RE .PP cache\-scanrc\-ttl .RS 4 عددی که طول عمر (TTL) نتیجه پویش یک مسیر برای یافتن مخازن git را بر حسب دقیقه مشخص می‌کند.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: "15".\& .RE .PP case\-sensitive\-sort .RS 4 مرتب‌سازی موارد در فهرست مخازن با حساسیت به حروف کوچک و بزرگ.\& مقدار پیش‌فرض: "1".\& همچنین ببینید: repository\-sort, section\-sort.\& .RE .PP cache\-size .RS 4 حداکثر تعداد مدخل‌ها در حافظه موقت cgit.\& وقتی روی "0" تنظیم شود، حافظه موقت غیرفعال می‌شود.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: "0" .RE .PP cache\-snapshot\-ttl .RS 4 عددی که طول عمر (TTL) نسخه کش تصاویر فوری (snapshots) را بر حسب دقیقه مشخص می‌کند.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: "5".\& .RE .PP cache\-static\-ttl .RS 4 عددی که طول عمر (TTL) نسخه کش صفحات مخزن که با یک SHA1 ثابت بازخوانی می‌شوند را بر حسب دقیقه مشخص می‌کند.\& همچنین ببینید: "CACHE".\& مقدار پیش‌فرض: \-1".\& .RE .PP clone\-prefix .RS 4 فهرستی از پیشوندهای مشترک جداشده با فاصله که هنگام ترکیب با نشانی وب مخزن، نشانی‌های وب کلون معتبر برای مخزن تولید می‌کند.\& این تنظیم تنها در صورتی استفاده می‌شود که repo\&.clone\-url مشخص نشده باشد.\& مقدار پیش‌فرض: none.\& .RE .PP clone\-url .RS 4 فهرستی از الگوهای نشانی وب کلون جداشده با فاصله.\& این تنظیم تنها در صورتی استفاده می‌شود که repo\&.clone\-url مشخص نشده باشد.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "MACRO EXPANSION", "FILTER API".\& .RE .PP commit\-filter .RS 4 دستوری را مشخص می‌کند که برای قالب‌بندی پیام‌های کامیت فراخوانی می‌شود.\& دستور، پیام را روی STDIN خود دریافت می‌کند و STDOUT خروجی دستور به‌صورت عین متن به عنوان پیام کامیت درج می‌شود، یعنی از این می‌توان برای ادغام با سامانه ردیابی اشکال (bugtracker) استفاده کرد.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "FILTER API".\& .RE .PP commit\-sort .RS 4 فلگی که وقتی روی "date" تنظیم شود، مرتب‌سازی دقیق بر اساس تاریخ را در تاریخچه لاگ کامیت‌ها فعال می‌کند و وقتی روی "topo" تنظیم شود مرتب‌سازی دقیق توپولوژیکی را فعال می‌سازد.\& در صورت عدم تنظیم، از ترتیب پیش‌فرض "git log" استفاده می‌شود.\& مقدار پیش‌فرض: unset.\& .RE .PP css .RS 4 نشانی وبی که سند css را برای گنجاندن در تمام صفحات cgit مشخص می‌کند.\& مقدار پیش‌فرض: "/cgit\&.css".\& می‌تواند چندین بار مشخص شود که در این صورت هر مسیر نشانی css به نوبه خود در بخش head سند اضافه می‌شود.\& .RE .PP email\-filter .RS 4 دستوری را مشخص می‌کند که برای قالب‌بندی نام و نشانی ایمیل کامیت‌کنندگان، نویسندگان و برچسب‌زنندگان (taggers) به‌روشی که در بخش‌های مختلف رابط کاربری cgit نمایش داده می‌شوند، فراخوانی خواهد شد.\& این دستور نشانی ایمیل و رشته صفحه مبدا را به عنوان آرگومان‌های خط فرمان، و متن موردنظر برای قالب‌بندی را روی STDIN دریافت می‌کند.\& خروجی قالب‌بندی‌شده باید در STDOUT نوشته شود.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "FILTER API".\& .RE .PP embedded .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit یک قطعه کد html مناسب برای تعبیه‌سازی در سایر صفحات html تولید کند.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "noheader".\& .RE .PP enable\-blame .RS 4 فلگی که وقتی روی "1" تنظیم شود، به cgit اجازه می‌دهد صفحه "blame" را برای فایل‌ها فراهم کرده و در مکان‌های مناسب پیوندهایی به آن صفحه ایجاد کند.\& مقدار پیش‌فرض: "0".\& .RE .PP enable\-commit\-graph .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit نمودار تاریخچه کامیت‌ها را با هنر اسکی (ASCII\-art) در سمت چپ پیام‌های کامیت در صفحه تاریخچه لاگ مخزن چاپ کند.\& مقدار پیش‌فرض: "0".\& .RE .PP enable\-filter\-overrides .RS 4 فلگی که وقتی روی "1" تنظیم شود، اجازه می‌دهد تمام تنظیمات فیلتر در فایل‌های cgitrc اختصاصی مخازن بازنویسی شوند.\& مقدار پیش‌فرض: none.\& .RE .PP enable\-follow\-links .RS 4 فلگی که وقتی روی "1" تنظیم شود، به کاربران اجازه می‌دهد یک فایل را در نمای تاریخچه لاگ دنبال کنند.\& مقدار پیش‌فرض: "0".\& .RE .PP enable\-git\-config .RS 4 فلگی که وقتی روی "1" تنظیم شود، به cgit اجازه می‌دهد از git config برای اعمال هرگونه تنظیمات اختصاصی مخزن استفاده کند.\& این گزینه در ارتباط با "scan\-path" استفاده شده و برای تقویت تنظیمات اختصاصی مخزن باید پیش از آن تعریف شود.\& کلیدهای gitweb\&.owner، gitweb\&.category، gitweb\&.description و gitweb\&.homepage به ترتیب به کلیدهای cgit با نام‌های repo\&.owner، repo\&.section، repo\&.desc و repo\&.homepage نگاشت می‌شوند.\& تمامی کلیدهای git config که با "cgit\&." آغاز می‌شوند به کلید متناظر با پیشوند "repo\&." در cgit نگاشت خواهند شد.\& مقدار پیش‌فرض: "0".\& همچنین ببینید: scan\-path, section\-from\-path.\& .RE .PP enable\-http\-clone .RS 4 اگر روی "1" تنظیم شود، cgit به عنوان یک نقطه پایانی HTTP ساده برای عملیات git clone عمل خواهد کرد.\& می‌توانید "http://$HTTP_HOST$SCRIPT_NAME/$CGIT_REPO_URL" را به clone\-url اضافه کنید تا این ویژگی فعال شود.\& اگر از روش دیگری برای میزبانی مخازن git استفاده می‌کنید، ممکن است مایل باشید این گزینه را غیرفعال کنید.\& مقدار پیش‌فرض: "1".\& .RE .PP enable\-html\-serving .RS 4 فلگی که اگر روی "1" تنظیم شود، به گرداننده /plain اجازه می‌دهد هدرهای mimetype مناسب را ارسال کند که باعث می‌شود فایل توسط مرورگر به عنوان HTML مدیریت شود.\& اگر روی "0" تنظیم شود، چنین فایل‌هایی در عوض با فرمت text/plain یا application/octet\-stream ارسال می‌شوند.\& مقدار پیش‌فرض: "0".\& همچنین ببینید: "repo\&.enable\-html\-serving".\& .RE .PP enable\-index\-links .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit پیوندهای اضافه‌ای برای هر مخزن در نمایه مخازن (به‌طور خاص، به صفحات "summary"، "commit" و "tree") ایجاد کند.\& مقدار پیش‌فرض: "0".\& .RE .PP enable\-index\-owner .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit مالک هر مخزن را در نمایه مخازن نمایش دهد.\& مقدار پیش‌فرض: "1".\& .RE .PP enable\-log\-filecount .RS 4 فلگی که اگر روی "1" تنظیم شود، باعث می‌شود cgit تعداد فایل‌های تغییریافته را برای هر کامیت در صفحه تاریخچه لاگ مخزن چاپ کند.\& مقدار پیش‌فرض: "0".\& .RE .PP enable\-log\-linecount .RS 4 فلگی که اگر روی "1" تنظیم شود، باعث می‌شود cgit تعداد خطوط افزوده و حذف‌شده را برای هر کامیت در صفحه تاریخچه لاگ مخزن چاپ کند.\& مقدار پیش‌فرض: "0".\& .RE .PP enable\-remote\-branches .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit شاخه‌های راه دور را در نماهای summary و refs نمایش دهد.\& مقدار پیش‌فرض: "0".\& همچنین ببینید: "repo\&.enable\-remote\-branches".\& .RE .PP enable\-subject\-links .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit هنگام ایجاد پیوندها به کامیت‌های والد در نمای کامیت، از موضوع کامیت والد به عنوان متن پیوند استفاده کند.\& مقدار پیش‌فرض: "0".\& همچنین ببینید: "repo\&.enable\-subject\-links".\& .RE .PP enable\-tree\-linenumbers .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit برای حباب‌های متن ساده چاپ‌شده در نمای درخت، پیوندهای شماره خط ایجاد کند.\& مقدار پیش‌فرض: "1".\& .RE .PP favicon .RS 4 نشانی وبی که به عنوان پیوند به آیکون میانبر (فاوآیکون) cgit استفاده می‌شود.\& پیشنهاد می‌شود از مقدار "/favicon\&.ico" استفاده شود زیرا برخی مرورگرها مقادیر دیگر را نادیده می‌گیرند.\& مقدار پیش‌فرض: "/favicon\&.ico".\& .RE .PP footer .RS 4 محتوای فایل مشخص‌شده با این گزینه، به‌صورت عین متن در پایین تمامی صفحات گنجانده می‌شود (یعنی جایگزین پیام استاندارد "generated by\&..." خواهد شد).\& مقدار پیش‌فرض: none.\& .RE .PP head\-include .RS 4 محتوای فایل مشخص‌شده با این گزینه، به‌صورت عین متن در بخش html HEAD در تمام صفحات گنجانده می‌شود.\& مقدار پیش‌فرض: none.\& .RE .PP header .RS 4 محتوای فایل مشخص‌شده با این گزینه، به‌صورت عین متن در بالای تمام صفحات گنجانده می‌شود.\& مقدار پیش‌فرض: none.\& .RE .PP include .RS 4 نام یک فایل پیکربندی برای گنجاندن پیش از تجزیه مابقی فایل پیکربندی فعلی.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "MACRO EXPANSION".\& .RE .PP js .RS 4 نشانی وبی که سند اسکریپت جاوااسکریپت را برای گنجاندن در تمام صفحات cgit مشخص می‌کند.\& مقدار پیش‌فرض: "/cgit\&.js".\& تنظیم این مورد روی یک رشته خالی، تولید پیوند به این فایل را در بخش head غیرفعال می‌کند.\& .RE .PP local\-time .RS 4 فلگی که اگر روی "1" تنظیم شود، باعث می‌شود cgit زمان‌های کامیت و برچسب را بر اساس منطقه زمانی سرور چاپ کند.\& مقدار پیش‌فرض: "0".\& .RE .PP logo .RS 4 نشانی وبی که منبع تصویری را مشخص می‌کند که به عنوان لوگو در تمام صفحات cgit استفاده خواهد شد.\& مقدار پیش‌فرض: "/cgit\&.png".\& .RE .PP logo\-link .RS 4 نشانی وبی که هنگام کلیک روی تصویر لوگوی cgit بارگذاری می‌شود.\& در صورت عدم تعیین، از نشانی وب محاسبه‌شده صفحه نمایه مخزن استفاده خواهد شد.\& مقدار پیش‌فرض: none.\& .RE .PP max\-atom\-items .RS 4 تعداد مواردی که باید در نمای خوراک‌های اتم (atom feeds) نمایش داده شوند را مشخص می‌کند.\& مقدار پیش‌فرض: "10".\& .RE .PP max\-blob\-size .RS 4 حداکثر اندازه یک حباب (blob) برای نمایش HTML بر حسب کیلوبایت را مشخص می‌کند.\& مقدار پیش‌فرض: "0" (محدودیت غیرفعال است).\& .RE .PP max\-commit\-count .RS 4 تعداد مدخل‌های قابل نمایش در هر صفحه در نمای "log" را مشخص می‌کند.\& مقدار پیش‌فرض: "50".\& .RE .PP max\-message\-length .RS 4 حداکثر تعداد نویسه‌های پیام کامیت برای نمایش در نمای "log" را مشخص می‌کند.\& مقدار پیش‌فرض: "80".\& .RE .PP max\-repo\-count .RS 4 تعداد مدخل‌های قابل نمایش در هر صفحه در صفحه نمایه مخزن را مشخص می‌کند.\& مقدار "0" تمام مخازن را بدون محدودیت نشان می‌دهد.\& مقدار پیش‌فرض: "50".\& .RE .PP max\-repodesc\-length .RS 4 حداکثر تعداد نویسه‌های توضیحات مخزن برای نمایش در صفحه نمایه مخزن را مشخص می‌کند.\& مقدار پیش‌فرض: "80".\& .RE .PP max\-stats .RS 4 تعیین حداکثر دوره پیش‌فرض آمارها.\& مقادیر معتبر عبارتند از "week"، "month"، "quarter" و "year"\&. در صورت عدم تعیین، آمارها غیرفعال هستند.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "repo\&.max\-stats".\& .RE .PP mimetype\&. .RS 4 تعیین نوع mime برای پسوند نام فایل مشخص‌شده.\& این مورد توسط دستور plain هنگام بازگرداندن محتوای حباب استفاده می‌شود.\& .RE .PP mimetype\-file .RS 4 فایل مورداستفاده برای جستجوی خودکار نوع mime را مشخص می‌کند.\& در صورت تعیین، این فیلد به عنوان جایگزین در زمانی که هیچ تطابقی در "mimetype\&." یافت نشود استفاده خواهد شد.\& در صورت عدم تعیین، چنین جستجویی انجام نمی‌شود.\& فایل معمول برای استفاده در یک سیستم لینوکس /etc/mime\&.types است.\& قالب فایل باید مطابق با موارد زیر باشد: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} یک خط توضیح، یک خط خالی یا خطی است که با یک هش (#) آغاز می‌شود، که می‌تواند اختیاری با فاصله سفید همراه باشد .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} یک خط غیرتوضیحی با mimetype (مانند image/png) آغاز می‌شود و به دنبال آن یک یا چند پسوند فایل (مانند jpg) می‌آید که همگی با فاصله سفید از هم جدا شده‌اند مقدار پیش‌فرض: none.\& همچنین ببینید: "mimetype\&.".\& .RE .RE .PP module\-link .RS 4 متنی که به عنوان رشته قالب‌بندی برای یک ابرپیوند هنگام چاپ یک زیرماژول در فهرست دایرکتوری استفاده می‌شود.\& آرگومان‌های رشته قالب، مسیر و SHA1 کامیت زیرماژول هستند.\& مقدار پیش‌فرض: none.\& .RE .PP noplainemail .RS 4 اگر روی "1" تنظیم شود، نمایش نشانی‌های ایمیل کامل نویسنده غیرفعال خواهد شد.\& مقدار پیش‌فرض: "0".\& .RE .PP noheader .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit سربرگ استاندارد را در تمام صفحات حذف کند.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "embedded".\& .RE .PP owner\-filter .RS 4 دستوری را مشخص می‌کند که برای قالب‌بندی ستون مالک در صفحه اصلی فراخوانی می‌شود.\& دستور، نام مالک را روی STDIN دریافت کرده و STDOUT خروجی دستور به‌صورت عین متن در جدول گنجانده می‌شود.\& از این قابلیت می‌توان برای پیوند دادن به اطلاعات تکمیلی مانند صفحه اصلی مالک استفاده کرد.\& در صورت فعال بودن، این فیلتر به جای نشانی وب پیش‌فرض جستجوی مالک استفاده می‌شود.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "FILTER API".\& .RE .PP project\-list .RS 4 فهرستی از زیرپوشه‌ها درون scan\-path، به نسبت آن، که باید به عنوان مخازن git بارگذاری شوند.\& این مورد باید پیش از scan\-path تعریف شود.\& مقدار پیش‌فرض: none.\& همچنین ببینید: scan\-path, "MACRO EXPANSION".\& .RE .PP readme .RS 4 متنی که به عنوان مقدار پیش‌فرض برای "repo\&.readme" استفاده خواهد شد.\& چندین کلید پیکربندی می‌تواند مشخص شود و cgit از اولین فایل یافت‌شده در این فهرست استفاده خواهد کرد.\& این گزینه در کنار scan\-path بسیار مفید است.\& مقدار پیش‌فرض: none.\& همچنین ببینید: scan\-path, repo\&.readme.\& .RE .PP remove\-suffix .RS 4 اگر روی "1" تنظیم شود و scan\-path فعال باشد، در صورتی که هر مخزنی با پسوند "\&.git" یافت شود، این پسوند از نشانی وب و نام آن حذف خواهد شد.\& این گزینه باید پیش از scan\-path تعریف شود.\& مقدار پیش‌فرض: "0".\& همچنین ببینید: scan\-path.\& .RE .PP renamelimit .RS 4 حداکثر تعداد فایل‌ها برای بررسی در زمان تشخیص تغییر نام‌ها.\& مقدار "\-1" از مقدار زمان کامپایل در git استفاده می‌کند (برای اطلاعات بیشتر به man git\-diff مراجعه کنید).\& مقدار پیش‌فرض: "\-1".\& .RE .PP repository\-sort .RS 4 روش مرتب‌سازی مخازن در هر بخش.\& مقادیر معتبر عبارتند از "name" برای مرتب‌سازی بر اساس نام مخزن یا "age" برای مرتب‌سازی بر اساس جدیدترین مخزن به‌روزرسانی‌شده.\& مقدار پیش‌فرض: "name".\& همچنین ببینید: section, case\-sensitive\-sort, section\-sort.\& .RE .PP robots .RS 4 متن مورداستفاده به عنوان محتوای برچسب متای "robots".\& مقدار پیش‌فرض: "index, nofollow".\& .RE .PP root\-desc .RS 4 متن چاپ‌شده زیر عنوان در صفحه نمایه مخازن.\& مقدار پیش‌فرض: "a fast webinterface for the git dscm".\& .RE .PP root\-readme .RS 4 محتوای فایل مشخص‌شده با این گزینه، به‌صورت عین متن زیر پیوند "about" در صفحه نمایه مخازن گنجانده می‌شود.\& مقدار پیش‌فرض: none.\& .RE .PP root\-title .RS 4 متن چاپ‌شده به عنوان سربرگ در صفحه نمایه مخازن.\& مقدار پیش‌فرض: "Git Repository Browser".\& .RE .PP scan\-hidden\-path .RS 4 اگر روی "1" تنظیم شود و scan\-path فعال باشد، scan\-path به صورت بازگشتی وارد پوشه‌هایی می‌شود که نامشان با نقطه (\fI\&.\fR) آغاز می‌شود.\& در غیر این صورت، scan\-path از چنین پوشه‌هایی (که "پنهان" تلقی می‌شوند) دوری خواهد کرد.\& توجه داشته باشید که این مورد برای پوشه "\&.git" در مخازن غیر\-bare صدق نمی‌کند.\& این مورد باید پیش از scan\-path تعریف شود.\& مقدار پیش‌فرض: 0.\& همچنین ببینید: scan\-path.\& .RE .PP scan\-path .RS 4 مسیری که برای یافتن مخازن پویش می‌شود.\& اگر حافظه موقت فعال باشد، نتیجه به عنوان یک فایل ضمیمه cgitrc در پوشه کش ذخیره می‌شود.\& اگر project\-list پیش از scan\-path تعریف شده باشد، scan\-path تنها پوشه‌های فهرست‌شده در فایل مشخص‌شده توسط project\-list را بارگذاری می‌کند.\& توجه داشته باشید که فقط تنظیمات سراسری که پیش از دستورالعمل scan\-path تعریف شده‌اند به هر مخزن اعمال خواهند شد.\& مقدار پیش‌فرض: none.\& همچنین ببینید: cache\-scanrc\-ttl, project\-list, "MACRO EXPANSION".\& .RE .PP section .RS 4 نام بخش فعلی مخزن \- تمام مخازن تعریف‌شده پس از این گزینه نام بخش فعلی را به ارث می‌برند.\& مقدار پیش‌فرض: none.\& .RE .PP section\-sort .RS 4 فلگی که وقتی روی "1" تنظیم شود، بخش‌ها را در فهرست مخازن بر اساس نام مرتب می‌کند.\& اگر ترتیب موجود در فایل cgitrc باید حفظ شود، این فلگ را روی "0" قرار دهید.\& مقدار پیش‌فرض: "1".\& همچنین ببینید: section, case\-sensitive\-sort, repository\-sort.\& .RE .PP section\-from\-path .RS 4 عددی که اگر پیش از scan\-path تعریف شود، مشخص می‌کند چند جزء از مسیر هر مخزن به عنوان نام پیش‌فرض بخش استفاده شود.\& اگر منفی باشد، cgit تعداد مشخص‌شده از اجزای مسیر بالاتر از پوشه مخزن را کنار می‌گذارد.\& مقدار پیش‌فرض: "0".\& .RE .PP side\-by\-side\-diffs .RS 4 اگر روی "1" تنظیم شود، تفاوت‌ها را به‌طور پیش‌فرض به‌صورت کنار هم به جای unidiff نمایش می‌دهد.\& مقدار پیش‌فرض: "0".\& .RE .PP snapshots .RS 4 متنی که مجموعه پیش‌فرض قالب‌های عکس فوری را که cgit برای آن‌ها پیوند تولید می‌کند، مشخص می‌سازد.\& مقدار آن فهرستی جداشده با فاصله از صفر یا چند مورد از مقادیر "tar"، "tar\&.gz"، "tar\&.bz2"، "tar\&.lz"، "tar\&.xz"، "tar\&.zst" و "zip" است.\& مقدار ویژه "all" تمام قالب‌های عکس فوری را فعال می‌کند.\& مقدار پیش‌فرض: none.\& تمامی فشرده‌سازها از تنظیمات پیش‌فرض استفاده می‌کنند.\& برخی تنظیمات می‌توانند از طریق متغیرهای محیطی تحت تاثیر قرار گیرند، برای مثال تنظیم ZSTD_CLEVEL=10 در محیط وب‌سرور برای فشرده‌سازی بالاتر (اما کندتر) zstd.\& .RE .PP source\-filter .RS 4 دستوری را مشخص می‌کند که برای قالب‌بندی حباب‌های متن ساده در نمای درخت فراخوانی خواهد شد.\& این دستور محتوای حباب را روی STDIN خود و نام حباب را به عنوان تنها آرگومان خط فرمان دریافت می‌کند.\& خروجی STDOUT از دستور به‌صورت عین متن به عنوان محتوای حباب گنجانده می‌شود، یعنی از این می‌توان برای پیاده‌سازی برجسته‌سازی نحو و غیره استفاده کرد.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "FILTER API".\& .RE .PP summary\-branches .RS 4 تعداد شاخه‌های نمایشی در نمای "summary" مخزن را مشخص می‌کند.\& مقدار پیش‌فرض: "10".\& .RE .PP summary\-log .RS 4 تعداد مدخل‌های لاگ نمایشی در نمای "summary" مخزن را مشخص می‌کند.\& مقدار پیش‌فرض: "10".\& .RE .PP summary\-tags .RS 4 تعداد برچسب‌های نمایشی در نمای "summary" مخزن را مشخص می‌کند.\& مقدار پیش‌فرض: "10".\& .RE .PP strict\-export .RS 4 نام فایلی که در صورت تعیین، باید درون مخزن وجود داشته باشد تا cgit اجازه دسترسی به آن مخزن را بدهد.\& از این می‌توان برای شبیه‌سازی قابلیت‌های EXPORT_OK و STRICT_EXPORT در gitweb و محدود کردن مخازن cgit برای تطابق با مخازن صادرشده توسط git\-daemon استفاده کرد.\& این گزینه باید پیش از scan\-path تعریف شود.\& .RE .PP virtual\-root .RS 4 نشانی وبی که در صورت تعیین، به عنوان ریشه تمام پیوندهای cgit استفاده خواهد شد.\& همچنین باعث می‌شود cgit \fIنشانی‌های وب مجازی\fR، یعنی نشانی‌هایی مانند \fI/cgit/tree/README\fR در مقایسه با \fI?r=cgit&p=tree&path=README\fR تولید کند.\& مقدار پیش‌فرض: none.\& نکته: cgit اخیراً نحوه استفاده از PATH_INFO را برای دستیابی به همین نوع نشانی‌های وب مجازی آموخته است، بنابراین این گزینه احتمالاً منسوخ خواهد شد.\& .RE .SH "تنظیمات مخزن (REPOSITORY SETTINGS)" .PP repo\&.about\-filter .RS 4 بازنویسی about\-filter پیش‌فرض.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "enable\-filter\-overrides".\& همچنین ببینید: "FILTER API".\& .RE .PP repo\&.branch\-sort .RS 4 فلگی که وقتی روی "age" تنظیم شود، مرتب‌سازی بر اساس تاریخ را در فهرست ارجاع شاخه‌ها فعال می‌کند و وقتی روی "name" تنظیم شود مرتب‌سازی بر اساس نام شاخه را فعال می‌سازد.\& مقدار پیش‌فرض: "name".\& .RE .PP repo\&.clone\-url .RS 4 فهرستی از نشانی‌های وب جداشده با فاصله که می‌توانند برای کلون کردن این مخزن استفاده شوند.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "MACRO EXPANSION".\& .RE .PP repo\&.commit\-filter .RS 4 بازنویسی commit\-filter پیش‌فرض.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "enable\-filter\-overrides".\& همچنین ببینید: "FILTER API".\& .RE .PP repo\&.commit\-sort .RS 4 فلگی که وقتی روی "date" تنظیم شود، مرتب‌سازی دقیق بر اساس تاریخ را در لاگ کامیت‌ها فعال می‌کند و وقتی روی "topo" تنظیم شود مرتب‌سازی دقیق توپولوژیکی را فعال می‌سازد.\& در صورت عدم تنظیم، از ترتیب پیش‌فرض "git log" استفاده می‌شود.\& مقدار پیش‌فرض: unset.\& .RE .PP repo\&.defbranch .RS 4 نام شاخه پیش‌فرض برای این مخزن.\& اگر چنین شاخه‌ای در مخزن وجود نداشته باشد، اولین نام شاخه (هنگام مرتب‌سازی) به عنوان پیش‌فرض استفاده می‌شود.\& مقدار پیش‌فرض: شاخه‌ای که HEAD به آن اشاره می‌کند، یا "master" اگر HEAD مناسبی وجود نداشته باشد.\& .RE .PP repo\&.desc .RS 4 مقداری که به عنوان توضیحات مخزن نمایش داده می‌شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.email\-filter .RS 4 بازنویسی email\-filter پیش‌فرض.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "enable\-filter\-overrides".\& همچنین ببینید: "FILTER API".\& .RE .PP repo\&.enable\-blame .RS 4 فلگی که می‌تواند برای غیرفعال کردن تنظیم سراسری \(oqenable\-blame\(cq استفاده شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.enable\-commit\-graph .RS 4 فلگی که می‌تواند برای غیرفعال کردن تنظیم سراسری \(oqenable\-commit\-graph\(cq استفاده شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.enable\-follow\-links .RS 4 فلگی که می‌تواند برای غیرفعال کردن تنظیم سراسری \(oqenable\-follow\-links\(cq استفاده شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.enable\-html\-serving .RS 4 فلگی که می‌تواند برای بازنویسی تنظیم سراسری enable\-html\-serving استفاده شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.enable\-log\-filecount .RS 4 فلگی که می‌تواند برای غیرفعال کردن تنظیم سراسری \(oqenable\-log\-filecount\(cq استفاده شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.enable\-log\-linecount .RS 4 فلگی که می‌تواند برای غیرفعال کردن تنظیم سراسری \(oqenable\-log\-linecount\(cq استفاده شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.enable\-remote\-branches .RS 4 فلگی که وقتی روی "1" تنظیم شود، باعث می‌شود cgit شاخه‌های راه دور را در نماهای summary و refs نمایش دهد.\& مقدار پیش‌فرض: \&. .RE .PP repo\&.enable\-subject\-links .RS 4 فلگی که می‌تواند برای بازنویسی تنظیم سراسری \(oqenable\-subject\-links\(cq استفاده شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.extra\-head\-content .RS 4 این مقدار به‌صورت عین متن به بخش head هر صفحه‌ای که برای این مخزن نمایش داده می‌شود اضافه خواهد شد.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.hide .RS 4 فلگی که وقتی روی "1" تنظیم شود، مخزن را از نمایه مخازن پنهان می‌کند.\& مخزن همچنان می‌تواند با ارائه مسیر مستقیم در دسترس قرار گیرد.\& مقدار پیش‌فرض: "0"\&. همچنین ببینید: "repo\&.ignore"\&. .RE .PP repo\&.homepage .RS 4 مقداری که به عنوان صفحه اصلی مخزن نمایش داده می‌شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.ignore .RS 4 فلگی که وقتی روی "1" تنظیم شود، مخزن را نادیده می‌گیرد.\& مخزن در نمایه نمایش داده نمی‌شود و با ارائه مسیر مستقیم نیز قابل دسترسی نیست.\& مقدار پیش‌فرض: "0"\&. همچنین ببینید: "repo\&.hide"\&. .RE .PP repo\&.logo .RS 4 نشانی وبی که منبع تصویری را مشخص می‌کند که به عنوان لوگو در صفحات این مخزن استفاده خواهد شد.\& مقدار پیش‌فرض: global logo\&. .RE .PP repo\&.logo\-link .RS 4 نشانی وبی که هنگام کلیک روی تصویر لوگوی cgit بارگذاری می‌شود.\& در صورت عدم تعیین، از نشانی وب محاسبه‌شده صفحه نمایه مخزن استفاده خواهد شد.\& مقدار پیش‌فرض: global logo\-link\&. .RE .PP repo\&.module\-link .RS 4 متنی که به عنوان رشته قالب‌بندی برای یک ابرپیوند هنگام چاپ یک زیرماژول در فهرست دایرکتوری استفاده می‌شود.\& آرگومان‌های رشته قالب، مسیر و SHA1 کامیت زیرماژول هستند.\& مقدار پیش‌فرض: .RE .PP repo\&.module\-link\&. .RS 4 متنی که به عنوان رشته قالب‌بندی برای یک ابرپیوند هنگام چاپ یک زیرماژول با مسیر زیرشاخه مشخص‌شده در فهرست دایرکتوری استفاده می‌شود.\& تنها آرگومان رشته قالب، SHA1 کامیت زیرماژول است.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.max\-stats .RS 4 بازنویسی دوره حداکثر آمار پیش‌فرض.\& مقادیر معتبر برابر با مقادیر مشخص‌شده برای تنظیم سراسری "max\-stats" هستند.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.name .RS 4 مقداری که به عنوان نام مخزن نمایش داده می‌شود.\& مقدار پیش‌فرض: \&. .RE .PP repo\&.owner .RS 4 مقداری که برای شناسایی مالک مخزن استفاده می‌شود.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.owner\-filter .RS 4 بازنویسی owner\-filter پیش‌فرض.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "enable\-filter\-overrides".\& همچنین ببینید: "FILTER API".\& .RE .PP repo\&.path .RS 4 یک مسیر مطلق به دایرکتوری مخزن.\& برای مخازن غیر\-bare، این همان دایرکتوری \&.git است.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.readme .RS 4 مسیری (به نسبت ) که فایلی را برای درج مستقیم به عنوان صفحه "درباره" برای این مخزن مشخص می‌کند.\& همچنین می‌توانید یک refspec گیت را با سرشاخه یا هش با افزودن refspec به همراه دو نقطه مشخص کنید.\& برای مثال "master:docs/readme\&.mkd"\&. اگر مقدار با دو نقطه شروع شود، یعنی ":docs/readme\&.rst"، سرشاخه ارائه‌شده در درخواست یا شاخه پیش‌فرض مخزن استفاده خواهد شد.\& به اشتراک‌گذاری هر فایلی کل آن درخت دایرکتوری را در نقاط پایانی "/about/PATH" در معرض دید قرار می‌دهد، بنابراین مطمئن شوید که هیچ فایل غیرعمومی در همان دایرکتوری فایل readme وجود ندارد.\& مقدار پیش‌فرض: \&. .RE .PP repo\&.section .RS 4 بازنویسی نام بخش فعلی برای این مخزن.\& مقدار پیش‌فرض: none.\& .RE .PP repo\&.snapshots .RS 4 ماسک قالب‌های عکس فوری برای این مخزن که cgit برای آن‌ها پیوند تولید می‌کند، محدودشده توسط تنظیم سراسری "snapshots"\&. مقدار پیش‌فرض: \&. .RE .PP repo\&.snapshot\-prefix .RS 4 پیشوندی که باید برای پیوندهای عکس فوری به جای نام پایه مخزن استفاده شود.\& برای مثال، مخزن "linux\-stable" ممکن است بخواهد این مورد را روی "linux" تنظیم کند تا عکس‌های فوری در قالب "linux\-3\&.15\&.4" به جای "linux\-stable\-3\&.15\&.4" باشند.\& مقدار پیش‌فرض: به معنای استفاده از نام پایه مخزن.\& .RE .PP repo\&.source\-filter .RS 4 بازنویسی source\-filter پیش‌فرض.\& مقدار پیش‌فرض: none.\& همچنین ببینید: "enable\-filter\-overrides".\& همچنین ببینید: "FILTER API".\& .RE .PP repo\&.url .RS 4 نشانی وب نسبی مورداستفاده برای دسترسی به مخزن.\& این باید اولین تنظیمی باشد که برای هر مخزن مشخص می‌شود.\& مقدار پیش‌فرض: none.\& .RE .SH "فایل CGITRC اختصاصی مخزن (REPOSITORY\-SPECIFIC CGITRC FILE)" .sp هنگامی که گزینه "scan\-path" برای کشف خودکار مخازن git استفاده می‌شود، cgit تلاش می‌کند فایل "cgitrc" را درون هر مخزن یافت‌شده تجزیه کند.\& چنین فایل پیکربندی اختصاصی مخزن می‌تواند شامل هر یک از گزینه‌های اختصاصی مخزن توضیح‌داده‌شده در بالا باشد، به جز "repo\&.url" و "repo\&.path"\&. علاوه بر این، گزینه‌های "filter" تنها زمانی در فایل‌های پیکربندی اختصاصی مخزن پذیرفته می‌شوند که "enable\-filter\-overrides" روی "1" تنظیم شده باشد.\& .sp نکته: پیشوند "repo\&." از نام گزینه‌ها در فایل‌های پیکربندی اختصاصی مخزن حذف می‌شود، برای مثال "repo\&.desc" تبدیل به "desc" می‌شود.\& .SH "رابط برنامه‌نویسی فیلتر (FILTER API)" .sp به‌طور پیش‌فرض، فیلترها فرآیندهای مجزایی هستند که هر بار در صورت نیاز اجرا می‌شوند.\& فناوری‌های جایگزین را می‌توان با افزودن پیشوند رشته مربوطه به مشخصات فیلتر استفاده کرد؛ مقادیر موجود عبارتند از: .PP \fIexec:\fR .RS 4 حالت پیش‌فرض "یک فرآیند به ازای هر فیلتر".\& .RE .PP \fIlua:\fR .RS 4 اسکریپت را با استفاده از یک مفسر داخلی Lua اجرا می‌کند.\& اسکریپت یک بار به ازای هر اجرای cgit بارگذاری می‌شود و ممکن است چندین بار در طول عمر cgit فراخوانی شود، که آن را به گزینه‌ای مناسب برای فیلترهای تکراری مانند \fIfilter email\fR تبدیل می‌کند.\& این اسکریپت به سه تابع پاسخ می‌دهد: .RE .PP \fIfilter_open(argument1, argument2, argument3, \&...)\fR .RS 4 این تابع هنگام فعال شدن فیلتر برای یک مجموعه داده خاص فراخوانی می‌شود.\& .RE .PP \fIfilter_write(buffer)\fR .RS 4 این تابع هر زمان که cgit داده‌ای را روی صفحه وب می‌نویسد فراخوانی می‌شود.\& .RE .PP \fIfilter_close()\fR .RS 4 این تابع زمانی فراخوانی می‌شود که عملیات فیلترسازی فعلی تکمیل شود.\& باید یک مقدار عدد صحیح بازگرداند.\& معمولاً 0 نشان‌دهنده موفقیت است.\& .sp .if n \{\ .RS 4 .\} .nf علاوه بر این، cgit توابع داخلی زیر را در اختیار Lua قرار می‌دهد: .fi .if n \{\ .RE .\} .RE .PP \fIhtml(str)\fR .RS 4 رشته \fIstr\fR را در صفحه وب می‌نویسد.\& .RE .PP \fIhtml_txt(str)\fR .RS 4 کاراکترهای HTML را اسکیپ کرده و \fIstr\fR را در صفحه وب می‌نویسد.\& .RE .PP \fIhtml_attr(str)\fR .RS 4 کاراکترهای HTML را برای یک صفت اسکیپ کرده و "str" را در صفحه وب می‌نویسد.\& .RE .PP \fIhtml_url_path(str)\fR .RS 4 کاراکترهای URL را برای یک مسیر اسکیپ کرده و \fIstr\fR را در صفحه وب می‌نویسد.\& .RE .PP \fIhtml_url_arg(str)\fR .RS 4 کاراکترهای URL را برای یک آرگومان اسکیپ کرده و \fIstr\fR را در صفحه وب می‌نویسد.\& .RE .PP \fIhtml_include(file)\fR .RS 4 فایل \fIfile\fR را در صفحه وب می‌گنجاند.\& .RE .sp پارامترها به‌صورت زیر در اختیار فیلترها قرار می‌گیرند.\& .PP about filter .RS 4 به این فیلتر یک پارامتر داده می‌شود: نام فایل مبدا برای فیلتر کردن.\& فیلتر می‌تواند از نام فایل برای تعیین (مثلاً) نوع نحو جهت قالب‌بندی فایل readme استفاده کند.\& متن درباره که باید فیلتر شود در ورودی استاندارد در دسترس است و متن فیلترشده در خروجی استاندارد انتظار می‌رود.\& .RE .PP auth filter .RS 4 فیلتر احراز هویت ۱۲ پارامتر دریافت می‌کند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} اقدام فیلتر (filter action) که در ادامه توضیح داده شده و مشخص می‌کند فیلتر برای کدام اقدام فراخوانی شده است .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} http cookie .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} http method .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} http referer .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} http path .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} http https flag .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} cgit repo .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} cgit page .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} cgit url .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} cgit login url هنگامی که اقدام فیلتر "body" باشد، این فیلتر باید HTML نمایش فرم ورود را که به login url ارسال (POST) می‌شود در خروجی بنویسد.\& هنگامی که اقدام فیلتر "authenticate\-cookie" باشد، این فیلتر باید http cookie را اعتبارسنجی کند و در صورت نامعتبر بودن 0 یا در صورت معتبر بودن 1 را در کد خروج / تابع بستن بازگرداند.\& اگر اقدام فیلتر "authenticate\-post" باشد، این فیلتر پارامترهای POSTشده را در ورودی استاندارد دریافت می‌کند و باید یک پاسخ کامل CGI، ترجیحاً با تغییر مسیر 302 بنویسد و یک یا چند هدر HTTP با عنوان "Set\-Cookie" که بعد از هر کدام خط جدید می‌آید در خروجی تولید نماید.\& .sp .if n \{\ .RS 4 .\} .nf لطفاً برای یک نمونه اسکریپت واضح که قابل اصلاح است، به `filters/simple\-authentication\&.lua` مراجعه کنید.\& .fi .if n \{\ .RE .\} .RE .RE .PP commit filter .RS 4 به این فیلتر هیچ آرگومانی داده نمی‌شود.\& متن پیام کامیت که باید فیلتر شود روی ورودی استاندارد در دسترس است و متن فیلترشده در خروجی استاندارد انتظار می‌رود.\& .RE .PP email filter .RS 4 به این فیلتر دو پارامتر داده می‌شود: نشانی ایمیل نویسنده مربوطه و یک رشته که صفحه مبدا را نشان می‌دهد.\& سپس فیلتر رشته متن را برای قالب‌بندی روی ورودی استاندارد دریافت می‌کند و انتظار می‌رود متن قالب‌بندی‌شده را برای گنجاندن در صفحه روی خروجی استاندارد بنویسد.\& .RE .PP owner filter .RS 4 به این فیلتر هیچ آرگومانی داده نمی‌شود.\& متن مالک روی ورودی استاندارد در دسترس است و انتظار می‌رود فیلتر روی خروجی استاندارد بنویسد.\& این خروجی در ستون مالک (Owner) گنجانده می‌شود.\& .RE .PP source filter .RS 4 به این فیلتر یک پارامتر داده می‌شود: نام فایل مبدا برای فیلتر کردن.\& فیلتر می‌تواند از نام فایل برای تعیین (مثلاً) حالت برجسته‌سازی نحو استفاده کند.\& محتوای فایل مبدا که باید فیلتر شود روی ورودی استاندارد در دسترس است و محتوای فیلترشده در خروجی استاندارد انتظار می‌رود.\& .RE .sp به تمامی فیلترها متغیرهای محیطی زیر داده می‌شود: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} CGIT_REPO_URL (از repo\&.url) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} CGIT_REPO_NAME (از repo\&.name) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} CGIT_REPO_PATH (از repo\&.path) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} CGIT_REPO_OWNER (از repo\&.owner) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} CGIT_REPO_DEFBRANCH (از repo\&.defbranch) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} CGIT_REPO_SECTION (از repo\&.section) .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} CGIT_REPO_CLONE_URL (از repo\&.clone\-url) .RE .sp اگر تنظیمی برای یک مخزن تعریف نشده باشد و تنظیم سراسری مربوطه نیز تعریف نشده باشد (در صورت وجود)، آنگاه متغیر محیطی متناظر خالی (unset) خواهد بود.\& .SH "بسط ماکرو (MACRO EXPANSION)" .sp گزینه‌های زیر در cgitrc از یک قابلیت ساده بسط ماکرو پشتیبانی می‌کنند، که در آن نشانه‌هایی که پیشوند "$" دارند با مقدار یک متغیر محیطی با نام مشابه جایگزین می‌شوند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} cache\-root .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} include .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} project\-list .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} scan\-path .RE .sp بسط ماکرو همچنین در محتوای $CGIT_CONFIG، در صورت تعریف شدن، رخ خواهد داد.\& .sp یکی از کاربردهای این ویژگی، میزبانی مجازی است که در ساده‌ترین شکل خود با افزودن خط زیر به /etc/cgitrc قابل دستیابی است: .sp .if n \{\ .RS 4 .\} .nf include=/etc/cgitrc\&.d/$HTTP_HOST .fi .if n \{\ .RE .\} .sp گزینه‌های زیر در حین پردازش درخواست بسط داده می‌شوند و از متغیرهای محیطی تعریف‌شده در "FILTER API" پشتیبانی می‌کنند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} clone\-url .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} repo\&.clone\-url .RE .SH "حافظه موقت (CACHE)" .sp تمامی مقادیر ttl حافظه موقت بر حسب دقیقه هستند.\& مقادیر منفی ttl نشان می‌دهند که یک نوع صفحه هرگز منقضی نخواهد شد، بنابراین اولین باری که به یک نشانی وب دسترسی پیدا می‌شود، نتیجه به‌طور نامحدود کش می‌شود، حتی اگر مخزن git زیربنایی تغییر کند.\& در مقابل، هنگامی که مقدار ttl صفر باشد، حافظه موقت برای آن نوع صفحه خاص غیرفعال می‌شود و آن نوع صفحه هرگز کش نخواهد شد.\& .SH "امضاها (SIGNATURES)" .sp نرم‌افزار cgit می‌تواند امضاهای \&.asc مربوط به قالب‌های مختلف عکس فوری را از طریق یادداشت‌های گیت (git notes) میزبانی کند.\& برای مثال، دستور زیر ممکن است برای افزودن امضا به یک بایگانی \&.tar\&.xz استفاده شود: .sp .if n \{\ .RS 4 .\} .nf git notes \-\-ref=refs/notes/signatures/tar\&.xz add \-C "$( gpg \-\-output \- \-\-armor \-\-detach\-sign cgit\-1\&.1\&.tar\&.xz | git hash\-object \-w \-\-stdin )" v1\&.1 .fi .if n \{\ .RE .\} .sp اگر در عوض تمایل باشد که امضایی از \&.tar زیربنایی ضمیمه شود، این امضا به عنوان یک حالت خاص، در کنار پیوند \&.tar\&.* که امضای اختصاصی خود را ندارد پیوند داده خواهد شد.\& برای مثال، امضای تاربال آخرین برچسب ممکن است با دستوری مشابه اضافه شود: .sp .if n \{\ .RS 4 .\} .nf tag="$(git describe \-\-abbrev=0)" git notes \-\-ref=refs/notes/signatures/tar add \-C "$( git archive \-\-format tar \-\-prefix "cgit\-${tag#v}/" "$tag" | gpg \-\-output \- \-\-armor \-\-detach\-sign | git hash\-object \-w \-\-stdin )" "$tag" .fi .if n \{\ .RE .\} .sp از آنجا که انتظار می‌رود git\-archive(1) خروجی پایداری بین نسخه‌ها تولید کند، این امکان فراهم می‌شود تا امضایی بلندمدت از محتویات یک برچسب داده‌شده ایجاد شود.\& .SH "نمونه فایل CGITRC (EXAMPLE CGITRC FILE)" .sp .if n \{\ .RS 4 .\} .nf # فعال‌سازی کش کردن تا ۱۰۰۰ مدخل خروجی cache\-size=1000 # تعیین برخی از نشانی‌های وب کلون پیش‌فرض با استفاده از بسط ماکرو clone\-url=git://foo\&.org/$CGIT_REPO_URL git@foo\&.org:$CGIT_REPO_URL # تعیین نشانی وب css css=/css/cgit\&.css # نمایش مالک در صفحه نمایه enable\-index\-owner=1 # اجازه کلون کردن با انتقال http enable\-http\-clone=1 # نمایش پیوندهای اضافی برای هر مخزن در صفحه نمایه enable\-index\-links=1 # فعال‌سازی صفحه blame و ایجاد پیوند به آن از صفحه درخت enable\-blame=1 # فعال‌سازی نمودار تاریخچه کامیت با هنر اسکی در صفحات لاگ enable\-commit\-graph=1 # نمایش تعداد فایل‌های تغییریافته برای هر کامیت در صفحات لاگ enable\-log\-filecount=1 # نمایش تعداد خطوط افزوده/حذف‌شده برای هر کامیت در صفحات لاگ enable\-log\-linecount=1 # مرتب‌سازی شاخه‌ها بر اساس تاریخ branch\-sort=age # افزودن فاوآیکون cgit favicon=/favicon\&.ico # استفاده از یک لوگوی سفارشی logo=/img/mylogo\&.png # فعال‌سازی آمار بر اساس هفته، ماه و فصل max\-stats=quarter # تنظیم عنوان و سربرگ صفحه نمایه مخازن root\-title=example\&.com git repositories # تنظیم یک زیرعنوان برای صفحه نمایه مخازن root\-desc=tracking the foobar development # گنجاندن اطلاعات بیشتر درباره example.com در صفحه نمایه root\-readme=/var/www/htdocs/about\&.html # اجازه دانلود فایل‌های tar.gz، tar.bz2 و zip snapshots=tar\&.gz tar\&.bz2 zip ## ## فهرست انواع mime متداول ## mimetype\&.gif=image/gif mimetype\&.html=text/html mimetype\&.jpg=image/jpeg mimetype\&.jpeg=image/jpeg mimetype\&.pdf=application/pdf mimetype\&.png=image/png mimetype\&.svg=image/svg+xml # برجسته‌سازی کد منبع با هایلایتر مبتنی بر pygments در پایتون source\-filter=/var/www/cgit/filters/syntax\-highlighting\&.py # قالب‌بندی markdown، restructuredtext، صفحات راهنما، فایل‌های متنی و html # از طریق مبدل‌های مناسب about\-filter=/var/www/cgit/filters/about\-formatting\&.sh ## ## جستجو برای این فایل‌ها در ریشه شاخه پیش‌فرض مخازن ## جهت ایجاد صفحه درباره: ## readme=:README\&.md readme=:readme\&.md readme=:README\&.mkd readme=:readme\&.mkd readme=:README\&.rst readme=:readme\&.rst readme=:README\&.html readme=:readme\&.html readme=:README\&.htm readme=:readme\&.htm readme=:README\&.txt readme=:readme\&.txt readme=:README readme=:readme readme=:INSTALL\&.md readme=:install\&.md readme=:INSTALL\&.mkd readme=:install\&.mkd readme=:INSTALL\&.rst readme=:install\&.rst readme=:INSTALL\&.html readme=:install\&.html readme=:INSTALL\&.htm readme=:install\&.htm readme=:INSTALL\&.txt readme=:install\&.txt readme=:INSTALL readme=:install ## ## فهرست مخازن. ## پی‌نوشت: هر مخزنی که در زمان خالی بودن section فهرست شود ## زیر سربرگ هیچ بخشی نمایش داده نخواهد شد ## پی‌نوشت ۲: این فهرست می‌تواند در یک فایل مجزا (مانند '/etc/cgitrepos') ## نگهداری و به‌صورت زیر ضمیمه شود: ## include=/etc/cgitrepos ## repo\&.url=foo repo\&.path=/pub/git/foo\&.git repo\&.desc=the master foo repository repo\&.owner=fooman@example\&.com repo\&.readme=info/web/about\&.html repo\&.url=bar repo\&.path=/pub/git/bar\&.git repo\&.desc=the bars for your foo repo\&.owner=barman@example\&.com repo\&.readme=info/web/about\&.html # مخازن بعدی زیر سربرگ 'extras' نمایش داده خواهند شد section=extras repo\&.url=baz repo\&.path=/pub/git/baz\&.git repo\&.desc=a set of extensions for bar users repo\&.url=wiz repo\&.path=/pub/git/wiz\&.git repo\&.desc=the wizard of foo # افزودن چند مخزن آینه‌ای section=mirrors repo\&.url=git repo\&.path=/pub/git/git\&.git repo\&.desc=the dscm repo\&.url=linux repo\&.path=/pub/git/linux\&.git repo\&.desc=the kernel # غیرفعال کردن دانلودهای موردی این مخزن repo\&.snapshots=0 # غیرفعال کردن شمارش خطوط برای این مخزن repo\&.enable\-log\-linecount=0 # محدود کردن حداکثر دوره آمار برای این مخزن repo\&.max\-stats=month .fi .if n \{\ .RE .\} .SH "اشکالات (BUGS)" .sp در حال حاضر توضیحات (کامنت‌ها) نمی‌توانند در همان خط تنظیمات ظاهر شوند؛ کامنت به عنوان بخشی از مقدار لحاظ خواهد شد.\& برای مثال این خط: .sp .if n \{\ .RS 4 .\} .nf robots=index # allow indexing .fi .if n \{\ .RE .\} .sp عنصر html زیر را تولید خواهد کرد: .sp .if n \{\ .RS 4 .\} .nf .fi .if n \{\ .RE .\} .SH "نویسنده (AUTHOR)" .sp Lars Hjemli Jason A\&. Donenfeld