'\" t .\" Title: git-init .\" 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\-INIT" "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 .\" disable justification (adjust text to left margin only) .ad l .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "نام (NAME)" git-init \- ایجاد یک مخزن خالی گیت یا مقداردهی اولیه مجدد یک مخزن موجود .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fBgit\fR \fBinit\fR [\fB\-q\fR | \fB\-\-quiet\fR] [\fB\-\-bare\fR] [\fB\-\-template=\fR\fI\fR] [\fB\-\-separate\-git\-dir\fR \fI\fR] [\fB\-\-object\-format=\fR\fI\fR] [\fB\-\-ref\-format=\fR\fI\fR] [\fB\-b\fR \fI\fR | \fB\-\-initial\-branch=\fR\fI\fR] [\fB\-\-shared\fR[\fB=\fR\fI\fR]] [\fI\fR] .fi .sp .SH "توضیحات (DESCRIPTION)" .sp این دستور یک مخزن خالی گیت ایجاد می‌کند \- اساساً یک دایرکتوری \fB\&.git\fR به همراه زیرپوشه‌هایی برای \fBobjects\fR، \fBrefs/heads\fR، \fBrefs/tags\fR و فایل‌های الگو\&. یک شاخه اولیه بدون هیچ کامیتی ایجاد خواهد شد (برای نام آن به گزینه \fB\-\-initial\-branch\fR در زیر مراجعه کنید)\&. .sp اگر متغیر محیطی \fBGIT_DIR\fR تنظیم شده باشد، مسیری را مشخص می‌کند که باید به‌جای \fB\&./\&.git\fR به عنوان پایه مخزن استفاده شود\&. .sp اگر دایرکتوری ذخیره‌سازی اشیاء از طریق متغیر محیطی \fBGIT_OBJECT_DIRECTORY\fR مشخص شده باشد، دایرکتوری‌های sha1 در زیر آن ایجاد می‌شوند؛ در غیر این صورت، از دایرکتوری پیش‌فرض \fB$GIT_DIR/objects\fR استفاده می‌شود\&. .sp اجرای \fBgit\fR \fBinit\fR در یک مخزن موجود بی‌خطر است\&. این دستور مواردی را که از قبل وجود دارند بازنویسی نمی‌کند\&. دلیل اصلی اجرای مجدد \fBgit\fR \fBinit\fR دریافت الگوهای تازه اضافه‌شده است (یا انتقال مخزن به مکانی دیگر در صورت مشخص شدن \fB\-\-separate\-git\-dir\fR)\&. .SH "گزینه‌ها (OPTIONS)" .PP \fB\-q\fR, \fB\-\-quiet\fR .RS 4 تنها چاپ پیام‌های خطا و هشدار؛ تمامی خروجی‌های دیگر سرکوب خواهند شد\&. .RE .PP \fB\-\-bare\fR .RS 4 ایجاد یک مخزن لخت (bare repository)\&. اگر متغیر محیطی \fBGIT_DIR\fR تنظیم نشده باشد، روی دایرکتوری کاری جاری تنظیم می‌شود\&. .RE .PP \fB\-\-object\-format=\fR\fI\fR .RS 4 مشخص کردن \fI\fR شیء داده‌شده (الگوریتم هش) برای مخزن\&. مقادیر معتبر عبارتند از \fBsha1\fR و (در صورت فعال بودن) \fBsha256\fR\&. مقدار پیش‌فرض \fBsha1\fR است\&. .sp توجه: در حال حاضر، هیچ‌گونه تعامل‌پذیری میان مخازن SHA\-256 و مخازن SHA\-1 وجود ندارد\&. .RE .sp از نظر تاریخی، ما هشدار می‌دادیم که ممکن است مخازن SHA\-256 بعدها هنگام معرفی چنین قابلیت‌های تعامل‌پذیری به تغییرات ناسازگار با گذشته نیاز داشته باشند\&. امروزه ما فقط انتظار تغییرات سازگار را داریم\&. علاوه بر این، اگر چنین تغییراتی ضروری تشخیص داده شوند، می‌توان انتظار داشت که مخازن SHA\-256 ایجادشده با نسخه کنونی گیت توسط نسخه‌های آینده گیت بدون از دست رفتن داده‌ها قابل استفاده باشند\&. .PP \fB\-\-ref\-format=\fR\fI\fR .RS 4 مشخص کردن \fI\fR ذخیره‌سازی ارجاع داده‌شده برای مخزن\&. مقادیر معتبر عبارتند از: .PP \fBfiles\fR .RS 4 برای فایل‌های سست به همراه packed\-refs\&. این مقدار پیش‌فرض است\&. .RE .PP \fBreftable\fR .RS 4 برای قالب reftable\&. .RE .RE .PP \fB\-\-template=\fR\fI\fR .RS 4 مشخص کردن دایرکتوری که الگوها از آن استفاده خواهند شد\&. (به بخش «دایرکتوری الگو» در زیر مراجعه کنید\&.) .RE .PP \fB\-\-separate\-git\-dir=\fR\fI\fR .RS 4 به‌جای مقداردهی اولیه مخزن به صورت یک دایرکتوری در \fB$GIT_DIR\fR یا \fB\&./\&.git/\fR، یک فایل متنی در آنجا ایجاد می‌کند که حاوی مسیر مخزن واقعی است\&. این فایل به عنوان یک پیوند نمادین مستقل از سیستم فایل گیت به مخزن عمل می‌کند\&. .sp اگر این یک مقداردهی اولیه مجدد باشد، مخزن به مسیر مشخص‌شده منتقل خواهد شد\&. .RE .PP \fB\-b\fR \fI\fR, \fB\-\-initial\-branch=\fR\fI\fR .RS 4 استفاده از \fI\fR برای شاخه اولیه در مخزن تازه‌ساخته‌شده\&. در صورت عدم تعیین، به نام پیش‌فرض (در حال حاضر \fBmaster\fR، اما این مقدار پس از انتشار Git 3\&.0 به \fBmain\fR تغییر خواهد یافت) برمی‌گردد\&. نام پیش‌فرض می‌تواند از طریق متغیر پیکربندی \fBinit\&.defaultBranch\fR سفارشی‌سازی شود\&. .RE .PP \fB\-\-shared\fR[\fB=\fR(\fBfalse\fR|\fBtrue\fR|\fBumask\fR|\fBgroup\fR|\fBall\fR|\fBworld\fR|\fBeverybody\fR|\fI\fR)] .RS 4 مشخص می‌کند که مخزن گیت قرار است بین چندین کاربر به اشتراک گذاشته شود\&. این به کاربرانی که متعلق به یک گروه مشترک هستند اجازه می‌دهد به آن مخزن push کنند\&. در صورت تعیین این گزینه، متغیر پیکربندی \fBcore\&.sharedRepository\fR طوری تنظیم می‌شود که فایل‌ها و دایرکتوری‌های زیر \fB$GIT_DIR\fR با دسترسی‌های درخواستی ایجاد شوند\&. در صورت عدم تعیین، گیت از دسترسی‌های گزارش‌شده توسط \fBumask\fR(2) استفاده خواهد کرد\&. .sp این گزینه می‌تواند مقادیر زیر را داشته باشد، که در صورت عدم تعیین مقدار، به صورت پیش‌فرض \fBgroup\fR خواهد بود: .PP \fBumask\fR, \fBfalse\fR .RS 4 استفاده از دسترسی‌های گزارش‌شده توسط \fBumask\fR(2)\&. این حالت پیش‌فرض در صورت عدم تعیین \fB\-\-shared\fR است\&. .RE .PP \fBgroup\fR, \fBtrue\fR .RS 4 مخزن را برای گروه قابل نوشتن می‌کند (و همچنین \fBg+sx\fR، زیرا ممکن است گروه git گروه اصلی همه کاربران نباشد)\&. این گزینه برای تسهیل دسترسی‌های یک مقدار ایمن \fBumask\fR(2) استفاده می‌شود\&. توجه داشته باشید که umask همچنان بر سایر بیت‌های دسترسی اعمال می‌شود (برای مثال اگر umask برابر با \fB0022\fR باشد، استفاده از \fBgroup\fR دسترسی خواندن را از سایر کاربران (خارج از گروه) حذف نخواهد کرد)\&. برای نحوه تعیین دقیق دسترسی‌های مخزن، به \fB0xxx\fR مراجعه کنید\&. .RE .PP \fBall\fR, \fBworld\fR, \fBeverybody\fR .RS 4 مشابه \fBgroup\fR، اما مخزن را برای همه کاربران قابل خواندن می‌کند\&. .RE .PP \fI\fR .RS 4 شناسه \fI\fR یک عدد اکتال ۳ رقمی با پیشوند \(oq0` است و هر فایل دارای حالت \fI\fR خواهد بود\&. مقدار \fI\fR مقدار \fBumask\fR(2) کاربران را بازنویسی می‌کند (و صرفاً مانند \fBgroup\fR و \fBall\fR محدودیت دسترسی‌ها را کاهش نمی‌دهد)\&. مقدار \fB0640\fR مخزنی ایجاد می‌کند که برای گروه قابل خواندن است، اما برای گروه قابل نوشتن نیست و برای دیگران نیز غیرقابل دسترس است\&. مقدار \fB0660\fR مخزنی ایجاد می‌کند که برای کاربر و گروه جاری قابل خواندن و نوشتن است، اما برای دیگران غیرقابل دسترس است (دایرکتوری‌ها و فایل‌های اجرایی بیت \fBx\fR خود را از بیت \fBr\fR دسته‌های متناظر کاربران دریافت می‌کنند)\&. .RE .RE .sp به‌طور پیش‌فرض، فلگ پیکربندی \fBreceive\&.denyNonFastForwards\fR در مخازن اشتراکی فعال است، تا نتوانید یک push بدون پیش‌روی سریع را به آن تحمیل کنید\&. .sp اگر یک \fI\fR ارائه دهید، دستور در داخل آن اجرا می‌شود\&. اگر این دایرکتوری وجود نداشته باشد، ایجاد خواهد شد\&. .SH "دایرکتوری الگو (TEMPLATE DIRECTORY)" .sp فایل‌ها و دایرکتوری‌های موجود در دایرکتوری الگو که نام آن‌ها با نقطه شروع نمی‌شود، پس از ایجاد \fB$GIT_DIR\fR در آن کپی خواهند شد\&. .sp دایرکتوری الگو یکی از موارد زیر (به ترتیب) خواهد بود: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} آرگومان ارائه‌شده با گزینه \fB\-\-template\fR؛ .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} محتویات متغیر محیطی \fB$GIT_TEMPLATE_DIR\fR؛ .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} متغیر پیکربندی \fBinit\&.templateDir\fR؛ یا .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} دایرکتوری پیش‌فرض الگو: \fB/usr/share/git\-core/templates\fR\&. .RE .sp دایرکتوری پیش‌فرض الگو شامل ساختار دایرکتوری، «الگوهای نادیده‌گیری» پیشنهادی (به \fBgitignore\fR(5) مراجعه کنید)، و فایل‌های هوک نمونه است\&. .sp هوک‌های نمونه همگی به‌طور پیش‌فرض غیرفعال هستند\&. برای فعال‌سازی یکی از هوک‌های نمونه، آن را با حذف پسوند \fB\&.sample\fR تغییر نام دهید\&. .sp برای اطلاعات عمومی‌تر در مورد اجرای هوک‌ها به \fBgithooks\fR(5) مراجعه کنید\&. .SH "مثال‌ها (EXAMPLES)" .PP شروع یک مخزن جدید گیت برای یک پایه‌کد موجود .RS 4 .sp .if n \{\ .RS 4 .\} .nf $ cd /path/to/my/codebase $ git init \fB(1)\fR $ git add \&. \fB(2)\fR $ git commit \fB(3)\fR .fi .if n \{\ .RE .\} .sp .TS tab(:); r lw(\n(.lu*75u/100u). \fB1.\fR\h'-2n':T{ ایجاد یک دایرکتوری \fB/path/to/my/codebase/\&.git\fR\&. T} \fB2.\fR\h'-2n':T{ افزودن تمام فایل‌های موجود به ایندکس\&. T} \fB3.\fR\h'-2n':T{ ثبت وضعیت اولیه به عنوان اولین کامیت در تاریخچه\&. T} .TE .RE .SH "پیکربندی (CONFIGURATION)" .sp تمام موارد زیر این خط در این بخش به طور گزینشی از مستندات \fBgit-config\fR(1) گنجانده شده است\&. محتوای آن همان چیزی است که در آنجا یافت می‌شود: .PP \fBinit\&.templateDir\fR .RS 4 دایرکتوری را مشخص می‌کند که الگوها از آن کپی خواهند شد\&. .RE .PP \fBinit\&.defaultBranch\fR .RS 4 امکان بازنویسی نام شاخه پیش‌فرض را، برای مثال هنگام مقداردهی اولیه یک مخزن جدید، فراهم می‌کند\&. .RE .PP \fBinit\&.defaultObjectFormat\fR .RS 4 امکان بازنویسی قالب شیء پیش‌فرض را برای مخازن جدید فراهم می‌کند\&. به \fB\-\-object\-format=\fR در \fBgit-init\fR(1) مراجعه کنید\&. هم گزینه خط فرمان و هم متغیر محیطی \fBGIT_DEFAULT_HASH\fR بر این پیکربندی اولویت دارند\&. .RE .PP \fBinit\&.defaultRefFormat\fR .RS 4 امکان بازنویسی قالب ذخیره‌سازی ارجاع پیش‌فرض را برای مخازن جدید فراهم می‌کند\&. به \fB\-\-ref\-format=\fR در \fBgit-init\fR(1) مراجعه کنید\&. هم گزینه خط فرمان و هم متغیر محیطی \fBGIT_DEFAULT_REF_FORMAT\fR بر این پیکربندی اولویت دارند\&. .RE .PP init\&.defaultSubmodulePathConfig .RS 4 یک مقدار بولی که مشخص می‌کند آیا \fBgit\fR \fBinit\fR و \fBgit\fR \fBclone\fR باید به‌طور خودکار \fBextensions\&.submodulePathConfig\fR را روی \fBtrue\fR تنظیم کنند یا خیر\&. این به همه مخازن جدید اجازه می‌دهد به‌طور خودکار از افزونه مسیر زیرماژول استفاده کنند\&. در صورت عدم تنظیم، مقدار پیش‌فرض \fBfalse\fR است\&. .RE .SH "گیت (GIT)" .sp بخشی از مجموعه \fBgit\fR(1)