Git
Chapters ▾ 2nd Edition

2.7 پایه های گیت - نام های مستعار در گیت

نام های مستعار در گیت

پیش از پایان بخش پایه های گیت، تنها یک نکته کوچک می ماند که میتواند تجربه ی کارتان را با گیت ساده تر، آسان تر و آشناتر کند: نام های مستعار. ما دیگر به …​. We won’t refer to them or assume you’ve used them later in the book, but you should probably know how to use them.

گیت توانایی پی بردن خودکار به دستورات نیمه نوشته را ندارد. اگر می خواهید فقط بخشی از یک دستور را تایپ کنید و گیت آن را بشناسد، به سادگی می توان یک نام مستعار با دستور git config. بسازید.

برای ساخت نام مستعار، در اینجا چند مثال می آورید:

$ git config --global alias.co checkout
$ git config --global alias.br branch
$ git config --global alias.ci commit
$ git config --global alias.st status

یعنی به جای نوشتن دستور git commit, دستور git ci بسنده می کند. همین طور که با گیت کار می کنید، شاید دستوری دیگر را بسیار تکرار کنید; با خیال آسوده نامهای مستعار بسازید.

این ریزه کاری در ساخت دستوراتی که از نظر شما باید در گیت باشد، می تواند بسیار کمک کند. برای نمونه، برای رفع مشکل برگشت استقرار موقت یا همان unstaging کردن یک فایل، می توانید دستور ویژه خودتان را به گیت بیافزایید:

$ git config --global alias.unstage 'reset HEAD --'

با این کار دو دستور زیر با هم برابرند و یک کار را انجام می دهند.:

$ git unstage fileA
$ git reset HEAD -- fileA

کمی روشن تر شد. ایجاد دستور last هم فراگیر است، به این شکل:

$ git config --global alias.last 'log -1 HEAD'

با این روش، به سادگی می توانید آخرین ثبت خود را ببینید.

$ git last
commit 66938dae3329c7aebe598c2246a8e6af90d04646
Author: Josh Goebel <dreamer3@example.com>
Date:   Tue Aug 26 19:48:51 2008 +0800

    test for current head

    Signed-off-by: Scott Chacon <schacon@example.com>

As you can tell,گیت به سادگی دستور جدید را با هرآنجه شما به عنوان نام مستعار می سازید جایگزین می کند. با این وجود، شاید شما بخواهید یک دستور بیرونی را اجرا کنید نه یک دستور زیر مجموعه ی گیت. در این مورد، دستور را با علامت ! آغاز می کنیم. این کار زمانی سودمند است که شما ابزار خودتان را برای کار با مخازن گیت ایجاد کرده اید.

ما می توانیم با نام مستعار، به جای دستور gitk ، دستور git visual را بکار بگیریم. به این ترتیب:

$ git config --global alias.visual '!gitk'