-
1. شروع به کار (getting started)
-
2. مقدمات گیت (git basics chapter)
- 2.1 گرفتن یک مخزن گیت (Getting a Git Repository)
- 2.2 ثبت تغییرات در مخزن (Recording Changes to the Repository)
- 2.3 مشاهده تاریخچه کامیتها (Viewing the Commit History)
- 2.4 بازگرداندن تغییرات (Undoing Things)
- 2.5 کار کردن با ریموت ها (Working with Remotes)
- 2.6 تگ کردن (Tagging)
- 2.7 نام مستعار گیت (Git Aliases)
- 2.8 خلاصه (summary)
-
3. انشعابگیری در گیت (Git Branching)
-
4. گیت روی سرور (Git on the server)
- 4.1 پروتکلها (The Protocols)
- 4.2 راهاندازی گیت روی یک سرور (Getting Git on a Server)
- 4.3 ایجاد کلید عمومی SSH شما (Generating Your SSH Public Key)
- 4.4 نصب و راهاندازی سرور (Setting up server)
- 4.5 سرویسدهنده گیت (Git Daemon)
- 4.6 HTTP هوشمند (Smart HTTP)
- 4.7 گیتوب (GitWeb)
- 4.8 گیتلب (GitLab)
- 4.9 گزینههای میزبانی شخص ثالث (Third Party Hosted Options)
- 4.10 خلاصه (Summary)
-
5. گیت توزیعشده (Distributed git)
-
6. GitHub (گیت هاب)
-
7. ابزارهای گیت (Git Tools)
- 7.1 انتخاب بازبینی (Revision Selection)
- 7.2 مرحلهبندی تعاملی (Interactive Staging)
- 7.3 ذخیره موقت و پاکسازی (Stashing and Cleaning)
- 7.4 Signing Your Work (امضای کارهای شما)
- 7.5 جستجو (Searching)
- 7.6 بازنویسی تاریخچه (Rewriting History)
- 7.7 بازنشانی به زبان ساده (Reset Demystified)
- 7.8 ادغام پیشرفته (Advanced Merging)
- 7.9 بازاستفاده خودکار از حل تضادها (Rerere)
- 7.10 اشکالزدایی با گیت (Debugging with Git)
- 7.11 سابماژول ها (Submodules)
- 7.12 بستهبندی (Bundling)
- 7.13 جایگزینی (Replace)
- 7.14 ذخیرهسازی اطلاعات ورود (Credential Storage)
- 7.15 خلاصه (Summary)
-
8. سفارشیسازی Git (Customizing Git)
-
9. گیت و سیستمهای دیگر (Git and Other Systems)
-
10. (Git Internals)
- 10.1 ابزارها و دستورات سطح پایین (Plumbing and Porcelain)
- 10.2 اشیا گیت (Git Objects)
- 10.3 مراجع گیت (Git References)
- 10.4 فایلهای بسته (Packfiles)
- 10.5 نگاشت (The Refspec)
- 10.6 پروتکلهای انتقال (Transfer Protocols)
- 10.7 نگهداری و بازیابی دادهها (Maintenance and Data Recovery)
- 10.8 متغیرهای محیطی (Environment Variables)
- 10.9 (Summary)
-
A1. پیوست A: گیت در محیطهای دیگر (Git in Other Environments)
- A1.1 رابط های گرافیکی (Graphical Interfaces)
- A1.2 Git در ویژوال استودیو (Git in Visual Studio)
- A1.3 Git در Visual Studio Code (Git in Visual Studio Code)
- A1.4 Git در IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine (Git in IntelliJ / PyCharm / WebStorm / PhpStorm / RubyMine)
- A1.5 Git در Sublime Text (Git in Sublime Text)
- A1.6 گیت در بش (Git in Bash)
- A1.7 Git در Zsh (Git in Zsh)
- A1.8 Git در PowerShell (Git in PowerShell)
- A1.9 خلاصه (Summary)
-
A2. پیوست B: گنجاندن گیت در برنامههای شما (Embedding Git in your Applications)
-
A3. پیوست C: دستورات گیت (Git Commands)
- A3.1 تنظیم و پیکربندی (Setup and Config)
- A3.2 گرفتن و ایجاد پروژهها (Getting and Creating Projects)
- A3.3 نمونهبرداری پایهای (Basic Snapshotting)
- A3.4 انشعابگیری و ادغام (Branching and Merging)
- A3.5 بهاشتراکگذاری و بهروزرسانی پروژهها (Sharing and Updating Projects)
- A3.6 بازرسی و مقایسه (Inspection and Comparison)
- A3.7 عیبیابی (Debugging)
- A3.8 اعمال تغییرات به صورت پچ (Patching)
- A3.9 ایمیل (Email)
- A3.10 سیستمهای خارجی (External Systems)
- A3.11 مدیریت (Administration)
- A3.12 دستورات سطح پایین گیت (Plumbing Commands)
A1.6 پیوست A: گیت در محیطهای دیگر (Git in Other Environments) - گیت در بش (Git in Bash)
گیت در بش (Git in Bash)
اگر کاربر Bash هستید، میتوانید از بعضی قابلیتهای shell خود استفاده کنید تا تجربه کار با Git برایتان راحتتر و کاربرپسندتر شود. Git در واقع همراه با پلاگینهایی برای چندین shell ارائه میشود، اما بهطور پیشفرض فعال نیست.
ابتدا لازم است یک نسخه از فایل completions را از source code نسخه Git releaseای که استفاده میکنید دریافت کنید.
با دستور git version
نسخه خود را بررسی کنید، سپس از git checkout tags/vX.Y.Z
استفاده کنید، جایی که vX.Y.Z
نسخه Git شماست.
فایل contrib/completion/git-completion.bash
را در جایی مثل home directory کپی کنید و این کد را به .bashrc
خود اضافه کنید:
. ~/git-completion.bash
وقتی این کار انجام شد، وارد یک Git repository شوید و تایپ کنید:
$ git chec<tab>
… و Bash بهصورت خودکار به git checkout
کامل میکند.
این قابلیت با تمام subcommandsهای Git، command-line parametersها و remotes و ref names (در صورت نیاز) کار میکند.
همچنین میتوانید prompt خود را سفارشیسازی کنید تا اطلاعات مربوط به Git repository در current directory نمایش داده شود.
این کار میتواند بهسادگی یا پیچیدگی دلخواه شما باشد، اما معمولاً چند بخش کلیدی وجود دارد که بیشتر افراد میخواهند ببینند، مثل current branch و status دایرکتوری کاری.
برای افزودن این موارد به prompt، کافی است فایل contrib/completion/git-prompt.sh
را از Git source repository به home directory خود کپی کنید و چیزی شبیه به این را به .bashrc
اضافه کنید:
. ~/git-prompt.sh
export GIT_PS1_SHOWDIRTYSTATE=1
export PS1='\w$(__git_ps1 " (%s)")\$ '
در اینجا:
- \w
مسیر current working directory را چاپ میکند.
- \$
همان نماد $
در prompt را چاپ میکند.
- __git_ps1 " (%s)"
تابعی است که توسط git-prompt.sh
ارائه شده و با یک آرگومان formatting فراخوانی میشود.
حالا bash prompt شما وقتی داخل یک پروژه تحت کنترل Git باشید، به این شکل دیده میشود:

bash
promptهر دو اسکریپت همراه با مستندات مفید ارائه میشوند؛ برای اطلاعات بیشتر محتوای git-completion.bash
و git-prompt.sh
را بررسی کنید.