'\" t .\" Title: git-replace .\" 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: Persian .\" .TH "GIT\-REPLACE" "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-replace \- ایجاد، ویرایش یا حذف ارجاعات جایگزین اشیاء .SH "خلاصه دستور (SYNOPSIS)" .sp .nf \fIgit replace\fR [\-f] \fIgit replace\fR [\-f] \-\-edit \fIgit replace\fR [\-f] \-\-graft [\&...] \fIgit replace\fR [\-f] \-\-convert\-graft\-file \fIgit replace\fR \-d \&... \fIgit replace\fR [\-\-format=] [\-l []] .fi .sp .SH "توضیحات (DESCRIPTION)" .sp یک ارجاع \fIreplace\fR را در فضای نام \fBrefs/replace/\fR اضافه می‌کند\&. .sp نام ارجاع \fIreplace\fR، مقدار SHA\-1 شیئی است که جایگزین می‌شود\&. محتوای ارجاع \fIreplace\fR، مقدار SHA\-1 شیء جایگزین است\&. .sp شیء جایگزین‌شده و شیء جایگزین باید از یک نوع باشند\&. این محدودیت را می‌توان با استفاده از \fB\-f\fR دور زد\&. .sp مگر اینکه \fB\-f\fR داده شده باشد، ارجاع \fIreplace\fR نباید از قبل وجود داشته باشد\&. .sp هیچ محدودیت دیگری روی اشیاء جایگزین‌شده و جایگزین وجود ندارد\&. کامیت‌های ادغام (merge) را می‌توان با کامیت‌های غیر ادغام جایگزین کرد و برعکس\&. .sp ارجاعات جایگزین به طور پیش‌فرض توسط تمام دستورات گیت استفاده خواهند شد، به جز دستوراتی که پیمایش دسترسی‌پذیری را انجام می‌دهند (prune، pack transfer و fsck)\&. .sp غیرفعال کردن استفاده از ارجاعات جایگزین برای هر دستوری، با استفاده از گزینه \fB\-\-no\-replace\-objects\fR درست پس از \fIgit\fR امکان‌پذیر است\&. .sp برای مثال اگر کامیت \fIfoo\fR با کامیت \fIbar\fR جایگزین شده باشد: .sp .if n \{\ .RS 4 .\} .nf $ git \-\-no\-replace\-objects cat\-file commit foo .fi .if n \{\ .RE .\} .sp .sp اطلاعات مربوط به کامیت \fIfoo\fR را نشان می‌دهد، در حالی که: .sp .if n \{\ .RS 4 .\} .nf $ git cat\-file commit foo .fi .if n \{\ .RE .\} .sp .sp اطلاعات مربوط به کامیت \fIbar\fR را نشان می‌دهد\&. .sp متغیر محیطی \fBGIT_NO_REPLACE_OBJECTS\fR را می‌توان برای دستیابی به اثری مشابه گزینه \fB\-\-no\-replace\-objects\fR تنظیم کرد\&. .SH "گزینه‌ها (OPTIONS)" .PP \-f, \-\-force .RS 4 اگر یک ارجاع جایگزین برای همان شیء از قبل وجود داشته باشد، (به جای ناموفق شدن دستور) بازنویسی خواهد شد\&. .RE .PP \-d, \-\-delete .RS 4 حذف ارجاعات جایگزین موجود برای اشیاء داده‌شده\&. .RE .PP \-\-edit .RS 4 محتوای یک شیء را به صورت تعاملی ویرایش می‌کند\&. محتوای موجود برای به صورت فرمت‌بندی‌شده (pretty\-printed) در یک فایل موقت قرار می‌گیرد، ویرایشگری روی آن فایل باز می‌شود و نتیجه برای ایجاد یک شیء جدید از همان نوع تجزیه می‌گردد\&. سپس یک ارجاع جایگزین ایجاد می‌شود تا را با شیء تازه‌ساخته‌شده جایگزین کند\&. برای جزئیات در مورد نحوه انتخاب ویرایشگر، \fBgit-var\fR(1) را ببینید\&. .RE .PP \-\-raw .RS 4 هنگام ویرایش، محتوای خام شیء را به جای محتوای فرمت‌بندی‌شده ارائه می‌دهد\&. در حال حاضر این گزینه فقط بر روی درخت‌ها (trees) تأثیر می‌گذارد که به شکل باینری آن‌ها نمایش داده خواهند شد\&. کار با این حالت سخت‌تر است، اما می‌تواند هنگام ترمیم درختی که آن‌قدر خراب شده که قابل فرمت‌بندی زیبا نیست، مفید باشد\&. توجه داشته باشید که ممکن است لازم باشد ویرایشگر خود را برای خواندن و نوشتن صحیح داده‌های باینری پیکربندی کنید\&. .RE .PP \-\-graft [\&...] .RS 4 ایجاد یک کامیت پیوندی (graft commit)\&. یک کامیت جدید با محتوایی مشابه ایجاد می‌شود، با این تفاوت که والدهای آن به جای والدهای ، مقادیر [\&...] خواهند بود\&. سپس یک ارجاع جایگزین برای جایگزینی با کامیت تازه‌ساخته‌شده ایجاد می‌شود\&. از \fB\-\-convert\-graft\-file\fR برای تبدیل فایل \fB$GIT_DIR/info/grafts\fR و استفاده از ارجاعات جایگزین به جای آن استفاده کنید\&. .RE .PP \-\-convert\-graft\-file .RS 4 برای تمام ورودی‌های موجود در \fB$GIT_DIR/info/grafts\fR کامیت‌های پیوندی ایجاد کرده و پس از موفقیت، آن فایل را حذف می‌کند\&. هدف این گزینه کمک به کاربران برای گذار و رهایی از فایل پیوند (graft file) است که اکنون منسوخ شده است\&. .RE .PP \-l , \-\-list .RS 4 فهرست کردن ارجاعات جایگزین برای اشیائی که با الگوی داده‌شده مطابقت دارند (یا همه در صورت ارائه نشدن الگو)\&. تایپ کردن "git replace" بدون آرگومان نیز تمام ارجاعات جایگزین را فهرست می‌کند\&. .RE .PP \-\-format= .RS 4 هنگام فهرست کردن، از مشخص‌شده استفاده می‌کند که می‌تواند یکی از موارد \fIshort\fR، \fImedium\fR و \fIlong\fR باشد\&. در صورت حذف، قالب به صورت پیش‌فرض \fIshort\fR خواهد بود\&. .RE .SH "قالب‌ها (FORMATS)" .sp قالب‌های زیر در دسترس هستند: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fIshort\fR: .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fImedium\fR: \(-> .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} \fIlong\fR: () \(-> () .RE .SH "ایجاد اشیاء جایگزین (CREATING REPLACEMENT OBJECTS)" .sp دستورات \fBgit-hash-object\fR(1)، \fBgit-rebase\fR(1) و \m[blue]\fBgit\-filter\-repo\fR\m[]\&\s-2\u[1]\d\s+2 در میان دیگر دستورات گیت، می‌توانند برای ایجاد اشیاء جایگزین از روی اشیاء موجود استفاده شوند\&. گزینه \fB\-\-edit\fR را می‌توان همراه با \fIgit replace\fR برای ایجاد یک شیء جایگزین با ویرایش یک شیء موجود به کار برد\&. .sp اگر می‌خواهید تعداد زیادی blob، درخت یا کامیت را که بخشی از یک رشته کامیت هستند جایگزین کنید، ممکن است فقط بخواهید یک رشته جایگزین از کامیت‌ها ایجاد نمایید و سپس تنها کامیت موجود در نوک (tip) رشته کامیت‌های هدف را با کامیت موجود در نوک رشته کامیت‌های جایگزین، جایگزین کنید\&. .SH "اشکالات (BUGS)" .sp مقایسه حباب‌ها (blobs) یا درخت‌ها (trees) که جایگزین شده‌اند با مواردی که جایگزین آن‌ها هستند، به درستی کار نخواهد کرد\&. همچنین استفاده از \fBgit\fR \fBreset\fR \fB\-\-hard\fR برای بازگشت به یک کامیت جایگزین‌شده، شاخه را به جای کامیت جایگزین‌شده به کامیت جایگزین منتقل می‌کند\&. .sp ممکن است هنگام استفاده از \fIgit rev\-list\fR مشکلات دیگری در رابطه با اشیاء در انتظار (pending objects) وجود داشته باشد\&. .SH "هشدارها (CAVEATS)" .sp وجود اشیاء جایگزین یا پیوندهای کامیت (commit grafts) خواندن یا نوشتن در commit\-graph را غیرفعال می‌کند، که این امر می‌تواند باعث بروز مشکلات عملکردی و افت کارایی شود\&. \fBgit-commit-graph\fR(1) را ببینید\&. .SH "همچنین ببینید (SEE ALSO)" .sp \fBgit-hash-object\fR(1) \fBgit-rebase\fR(1) \fBgit-tag\fR(1) \fBgit-branch\fR(1) \fBgit-commit\fR(1) \fBgit-var\fR(1) \fBgit\fR(1) \m[blue]\fBgit\-filter\-repo\fR\m[]\&\s-2\u[1]\d\s+2 .SH "گیت (GIT)" .sp بخشی از مجموعه \fBgit\fR(1) .SH "نکات (NOTES)" .IP " 1." 4 git-filter-repo .RS 4 \%https://github.com/newren/git-filter-repo .RE