TIG(1) Tig Manual TIG(1)

tig - رابط حالت متنی برای Git

tig        [options] [revisions] [--] [paths]
tig log    [options] [revisions] [--] [paths]
tig show   [options] [revisions] [--] [paths]
tig reflog [options] [revisions]
tig blame  [options] [rev] [--] path
tig grep   [options] [pattern]
tig refs   [options]
tig stash  [options]
tig status
tig <      [Git command output]

برنامه Tig یک رابط حالت متنی مبتنی بر ncurses برای git(1) است. این ابزار عمدتاً به عنوان مرورگر مخزن Git عمل می‌کند، اما می‌تواند در آماده‌سازی تغییرات (staging) برای ثبت (commit) در سطح تکه‌کدها (chunk) نیز کمک کند و به عنوان صفحه‌بند (pager) برای خروجی دستورات گوناگون Git به کار رود.

گزینه‌های خط فرمان شناخته‌شده توسط Tig شامل تمامی گزینه‌های معتبر git-log(1) و git-diff(1)، به همراه زیردستورها و گزینه‌های اختصاصی خودِ Tig است. اولین پارامتر خط فرمان که با «-» آغاز نشود، به عنوان یک مشخصه نسخه (revision) یا یک مسیر تفسیر شده و به تجزیه گزینه‌ها پایان می‌دهد. تمام گزینه‌های اضافی به دستور Git زیرین ارسال خواهند شد.

توجه داشته باشید که این بدان معناست که هرگونه آرگومان مربوط به گزینه‌ها باید به صورت چسبیده مشخص شود. به عنوان مثال، به جای tig -S foo از tig -Sfoo، و به جای tig --grep foo از tig --grep=foo استفاده کنید؛ در غیر این صورت foo به جای یک آرگومان، به عنوان یک نسخه تفسیر خواهد شد.

show

نمای diff را با استفاده از گزینه‌های ارائه‌شده برای git-show(1) باز می‌کند.

blame

فایل مشخص‌شده را همراه با حاشیه‌نویسی کامیت‌ها نمایش می‌دهد. صفر یا چند گزینه از git-blame(1) را می‌پذیرد. به صورت اختیاری می‌تواند از نسخه (revision) ارائه‌شده محدود شود.

status

در نمای وضعیت (status view) آغاز به کار می‌کند.

log

در نمای لاگ (log view) آغاز به کار کرده و خروجی git-log(1) را نمایش می‌دهد.

reflog

در نمای reflog آغاز به کار می‌کند.

refs

در نمای refs آغاز به کار می‌کند. تمام مرجع‌ها نمایش داده می‌شوند مگر اینکه با استفاده از یکی از پارامترهای --branches، --remotes، یا --tags محدود شده باشند.

stash

در نمای stash آغاز به کار می‌کند.

grep

نمای grep را باز می‌کند. از همان گزینه‌های git-grep(1) پشتیبانی می‌کند.

+<number>

نمای نخست را در حالی که سطر <number> قابل مشاهده و انتخاب شده است نمایش می‌دهد.

-v, --version

اطلاعات نسخه را نمایش داده و خارج می‌شود.

-h, --help

پیام راهنما را نمایش داده و خارج می‌شود.

-C <path>

برنامه را طوری اجرا می‌کند که گویی Tig به جای دایرکتوری کاری فعلی، در مسیر <path> آغاز شده است.

هنگامی که ورودی از طریق stdin فراهم شود، Tig وارد حالت صفحه‌بندی (pager mode) می‌شود و از زیردستورها و گزینه‌های زیر پشتیبانی می‌کند:

•هنگامی که زیردستور show مشخص شده و گزینهٔ --stdin داده شده باشد، فرض می‌شود که stdin فهرستی از شناسه کامیت‌ها است و به دستور git-show(1) زیربنایی نمای diff فرستاده خواهد شد. برای مثال:
$ git rev-list --author=vivien HEAD | tig show --stdin
•هنگامی که --stdin داده شود، فرض می‌شود که stdin فهرستی از شناسه کامیت‌ها است و به دستور git-log(1) زیربنایی نمای اصلی (main view) فرستاده خواهد شد. برای مثال:
$ tig --no-walk --stdin < cherry-picks.txt
•هنگامی که --pretty=raw داده شود، فرض می‌شود که stdin خروجی قالب‌بندی‌شدهٔ “pretty=raw” مشابه با git-log(1) است. برای مثال:
$ git reflog --pretty=raw | tig --pretty=raw

هنگامی که هیچ زیردستور یا گزینه‌ای داده نشود، از نمای صفحه‌بندی (pager view) برای نمایش ورودی دستور Git که روی stdin داده شده است استفاده خواهد شد. نمای صفحه‌بندی فرض می‌کند که ورودی یا از git-log(1) یا از git-diff(1) است و آن را مشابه با نماهای log و diff برجسته خواهد کرد. برای مثال:

$ git log -Schange -p --raw | tig

نمایش فهرست کامیت‌های شاخهٔ جاری:

$ tig

نمایش کامیت‌ها از یک یا چند شاخه:

$ tig test master

شبیه‌سازی وضعیتی که گویی تمام ارجاع‌های درون refs/ در خط فرمان فهرست شده‌اند:

$ tig --all

نمایش تفاوت‌های بین دو شاخه:

$ tig test..master

نمایش تغییرات نگارش‌های زیرپیمانه (submodule):

$ tig --submodule

نمایش تغییرات یک فایل منفرد:

$ tig -- README

نمایش محتوای فایل README در یک بازبینی مشخص:

$ tig show tig-0.8:README

نمایش بازبینی‌های میان دو تاریخ مشخص برای یک فایل:

$ tig --after="2004-01-01" --before="2006-05-16" -- README

ردیابی سطرهای فایل (blame) با فعال‌سازی تشخیص کپی:

$ tig blame -C README

نمایش فهرست ذخیره‌ها (stashes):

$ tig stash

جستجوی خطوط حاوی DEFINE_ENUM در تمام فایل‌ها:

$ tig grep -p DEFINE_ENUM

نمایش ارجاع‌ها (شاخه‌ها، ریموت‌ها و برچسب‌ها):

$ tig refs

استفاده از تفاوت کلمه‌ای (word diff) در نمای تفاوت:

$ tig --word-diff=plain

علاوه بر متغیرهای محیطی استفاده‌شده توسط Git (مانند GIT_DIR)، Tig متغیرهای زیر را نیز تعریف می‌کند. متغیرهای محیطی مرتبط با دستور از طریق متغیرهای جایگزین، مانند %(commit) و %(blob)، به وضعیت داخلی Tig دسترسی دارند. برای فهرست کامل به tigrc(5) مراجعه کنید.

TIGRC_USER

مسیر فایل پیکربندی کاربر (پیش‌فرض آن ~/.tigrc یا $XDG_CONFIG_HOME/tig/config است).

TIGRC_SYSTEM

مسیر فایل پیکربندی سراسری سیستم (پیش‌فرض آن {sysconfdir}/tigrc است). برای استفاده از پیکربندی توکار، آن را با رشته‌ای خالی مقداردهی کنید.

TIG_LS_REMOTE

دستوری برای دریافت تمام مرجع‌های مخزن. خروجی این دستور باید قالبی یکسان با git-ls-remote(1) داشته باشد.

TIG_DIFF_OPTS

گزینه‌های diff برای استفاده در نمای diff. نمای diff از git-show(1) برای قالب‌بندی استفاده می‌کند و همیشه --patch-with-stat را ارسال می‌نماید. همچنین می‌توانید تنظیم diff-options را در فایل پیکربندی تعیین کنید.

TIG_TRACE

مسیر فایل ردگیری (trace) که در آن اطلاعات مربوط به دستورهای Git ثبت می‌شوند.

TIG_SCRIPT

مسیر اسکریپتی که باید به‌طور خودکار هنگام راه‌اندازی اجرا شود. اگر مقدار این متغیر محیطی روی یک رشته خالی تنظیم شده باشد، اسکریپت از stdin خوانده می‌شود. این اسکریپت سطر به سطر تفسیر شده و می‌تواند شامل دستورهای اعلان خط فرمان (prompt) و نگاشت‌های کلید باشد. توجه داشته باشید که نویسه < درون اسکریپت باید به‌صورت <LT> کدگذاری شود.
E.g. TIG_SCRIPT=<(echo :set main-view-commit-title-graph = no) tig

TIG_NO_DISPLAY

اجرای Tig بدون رندر کردن هیچ‌چیز در ترمینال. این متغیر Ncurses را وادار به نوشتن در /dev/null می‌کند. کاربرد اصلی آن برای آزمون‌های خودکار Tig است.

TIG_EDITOR

دستور ویرایشگری که هنگام مشاهده فایل‌ها استفاده می‌شود. این متغیر محیطی (به ترتیب اولویت) بر $GIT_EDITOR، پیکربندی core.editor، $VISUAL و $EDITOR مقدم است؛ بنابراین امکان استفاده از ویرایشگری متفاوت با ویرایشگر مورداستفاده Git را فراهم می‌کند. مقدار این متغیر هنگام استفاده، توسط پوسته (shell) تفسیر می‌شود.

$XDG_CONFIG_HOME/tig/config, ~/.config/tig/config, ~/.tigrc

فایل پیکربندی کاربر Tig به‌صورت زیر بارگذاری می‌شود. اگر $XDG_CONFIG_HOME تنظیم شده باشد، پیکربندی کاربر از $XDG_CONFIG_HOME/tig/config خوانده می‌شود. اگر $XDG_CONFIG_HOME خالی یا تعریف‌نشده باشد، پیکربندی کاربر در صورت وجود از ~/.config/tig/config خوانده می‌شود و در صورت عدم وجود به ~/.tigrc رجوع می‌شود. برای مثال‌ها به tigrc(5) مراجعه کنید.

/etc/tigrc

فایل پیکربندی سراسری سیستم.

$GIT_DIR/config, ~/.gitconfig, /etc/gitconfig

فایل‌های پیکربندی Git. هنگام راه‌اندازی به کمک git-config(1) خوانده می‌شوند.

$XDG_DATA_HOME/tig/history, ~/.local/share/tig/history, ~/.tig_history

هنگامی که با پشتیبانی از readline کامپایل شده باشد، Tig تاریخچه‌ای ماندگار از دستورها و جستجوها را ذخیره می‌کند. مکان فایل تاریخچه به‌صورت زیر تعیین می‌شود. اگر $XDG_DATA_HOME تنظیم شده باشد و $XDG_DATA_HOME/ موجود باشد، در صورت نیاز $XDG_DATA_HOME/tig/ ایجاد شده و تاریخچه در $XDG_DATA_HOME/tig/history ذخیره می‌شود. اگر $XDG_DATA_HOME خالی یا تعریف‌نشده باشد، تاریخچه در صورت وجود دایرکتوری ~/.local/share/tig/ در ~/.local/share/tig/history ذخیره می‌شود، و در صورت عدم وجود به ~/.tig_history رجوع می‌شود.

لطفاً برای کسب اطلاعات دربارهٔ نسخه‌های جدید و نحوهٔ گزارش باگ‌ها یا درخواست قابلیت‌ها، از صفحهٔ اصلی[1] Tig دیدن کنید.

کپی‌رایت (c) 2006-2026 Jonas Fonseca <jonas.fonseca@gmail.com[2]>

این برنامه یک نرم‌افزار آزاد است؛ می‌توانید آن را تحت شرایط «پروانهٔ عمومی همگانی گنو» (GNU General Public License) منتشر شده توسط بنیاد نرم‌افزارهای آزاد؛ نسخهٔ ۲ پروانه، یا (به انتخاب خودتان) هر نسخهٔ بعدی دیگری، بازتوزیع کرده و/یا تغییر دهید.

tigrc(5), tigmanual(7), git(7)

1.
صفحهٔ اصلی
2.
jonas.fonseca@gmail.com
mailto:jonas.fonseca@gmail.com
2026-06-13 Tig 2.6.1