-
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)
6.1 GitHub (گیت هاب) - راهاندازی و پیکربندی حساب کاربری (Account Setup and Configuration)
گیتهاب بزرگترین میزبان مخازن Git در دنیاست و نقطهی مرکزی همکاری برای میلیونها توسعهدهنده و پروژه محسوب میشود. درصد زیادی از تمام مخازن Git روی گیتهاب میزبانی میشوند و بسیاری از پروژههای متنباز از آن برای میزبانی مخزن، پیگیری مشکلات، بازبینی کد و موارد دیگر استفاده میکنند. بنابراین، با اینکه گیتهاب مستقیماً بخشی از پروژهی متنباز Git نیست، احتمال زیادی وجود دارد که هنگام استفادهی حرفهای از Git، بخواهید یا نیاز داشته باشید با گیتهاب کار کنید.
این فصل دربارهی استفادهی مؤثر از گیتهاب است. ما مواردی مانند ساخت و مدیریت حساب کاربری، ایجاد و استفاده از مخازن Git، گردشکارهای رایج برای مشارکت در پروژهها و پذیرش مشارکت دیگران در پروژههای خودتان، رابط برنامهنویسی گیتهاب و نکات ریز اما کاربردی برای راحتتر شدن کارتان را پوشش خواهیم داد.
اگر علاقهای به استفاده از گیتهاب برای میزبانی پروژههای خود یا همکاری در پروژههایی که روی گیتهاب میزبانی میشوند ندارید، میتوانید با خیال راحت به بخش ابزارهای گیت (Git Tools) بروید.
راهاندازی و پیکربندی حساب کاربری (Account Setup and Configuration)
اولین کاری که باید انجام دهید، ایجاد یک حساب کاربری رایگان است. کافی است به https://github.com
مراجعه کنید، یک نام کاربری که قبلاً استفاده نشده است انتخاب کنید، یک ایمیل و رمز عبور وارد کنید و روی دکمه بزرگ سبز رنگ «Sign up for GitHub
» کلیک کنید.

مرحله بعدی صفحه قیمتگذاری طرحهای ارتقا یافته است که فعلاً میتوانید آن را نادیده بگیرید. گیتهاب ایمیلی برای تأیید آدرس ایمیل شما ارسال خواهد کرد. حتماً این کار را انجام دهید؛ این مرحله بسیار مهم است (که بعداً به آن خواهیم پرداخت).
یادداشت
|
گیتهاب تقریباً تمام امکانات خود را با حسابهای رایگان ارائه میدهد، به جز برخی ویژگیهای پیشرفته. طرحهای پولی گیتهاب شامل ابزارها و امکانات پیشرفته به همراه افزایش محدودیتها برای خدمات رایگان هستند، اما در این کتاب به آنها نخواهیم پرداخت. برای کسب اطلاعات بیشتر درباره طرحهای موجود و مقایسه آنها، به https://github.com/pricing مراجعه کنید. |
کلیک روی لوگوی Octocat در بالای صفحه سمت چپ، شما را به صفحه داشبوردتان هدایت میکند. اکنون آماده استفاده از گیتهاب هستید.
دسترسی SSH (SSH Access)
در حال حاضر، شما میتوانید با استفاده از پروتکل https://
به مخازن گیت متصل شوید و با نام کاربری و رمز عبوری که همین الان ساختهاید، احراز هویت کنید. با این حال، برای کلون کردن پروژههای عمومی حتی نیازی به ثبتنام هم ندارید — حساب کاربری که ساختیم زمانی به کار میآید که بخواهیم پروژهای را فورک کنیم و سپس تغییرات را به فورک خودمان ارسال کنیم.
اگر میخواهید از دسترسی SSH استفاده کنید، باید یک کلید عمومی تنظیم کنید. اگر هنوز کلیدی ندارید، به بخش ایجاد کلید عمومی SSH شما (Generating Your SSH Public Key) مراجعه کنید. تنظیمات حساب خود را از طریق لینک بالای سمت راست صفحه باز کنید:

سپس بخش "SSH keys" را از ستون سمت چپ انتخاب کنید.

در آنجا روی دکمه «Add an SSH key» کلیک کنید، به کلید خود یک نام بدهید، محتوای فایل کلید عمومی خود مانند ~/.ssh/id_rsa.pub
(یا هر نامی که به آن دادهاید) را در کادر متن قرار دهید و روی «Add key» کلیک کنید.
یادداشت
|
حتماً به کلید SSH خود نامی بدهید که بتوانید به راحتی به خاطر بسپارید. میتوانید هر کلید را به نامی خاص مثل «لپتاپ من» یا «حساب کاری» نامگذاری کنید تا اگر بعدها نیاز به لغو یک کلید داشتید، به راحتی متوجه شوید که کدام کلید را میخواهید حذف کنید. |
آواتار شما (Your Avatar)
اگر تمایل دارید، میتوانید تصویری که به صورت پیشفرض برایتان ساخته شده را با عکس دلخواه خود جایگزین کنید. ابتدا به تب «Profile» (بالای تب SSH Keys) بروید و روی «Upload new picture» کلیک کنید.

ما یک کپی از لوگوی گیت که روی هارد داریم انتخاب میکنیم و سپس فرصت برش دادن تصویر را خواهیم داشت.

از این پس، در هر جایی که در سایت فعالیت میکنید، دیگران آواتار شما را کنار نام کاربریتان خواهند دید.
اگر قبلاً تصویری در سرویس محبوب Gravatar (که اغلب برای حسابهای وردپرس استفاده میشود) آپلود کرده باشید، آن تصویر به طور پیشفرض استفاده خواهد شد و نیازی به انجام این مرحله ندارید.
آدرسهای ایمیل شما (Your Email Addresses)
گیتهاب برای ثبت ارتباط کامیتهای گیت با حساب شما از آدرس ایمیل استفاده میکند. اگر در کامیتهای خود از چندین ایمیل استفاده میکنید و میخواهید گیتهاب آنها را به درستی به حساب شما مرتبط کند، باید همه آدرسهای ایمیل استفاده شده را در بخش Emails در تنظیمات حساب اضافه کنید.

در Add all your email addresses میتوانید برخی از وضعیتهای ممکن را ببینید. آدرس بالایی تأیید شده و به عنوان آدرس اصلی تنظیم شده است، یعنی اطلاعیهها و رسیدها به آن ارسال میشود. آدرس دوم تأیید شده است و میتوانید در صورت تمایل آن را به عنوان آدرس اصلی انتخاب کنید. آدرس آخر تأیید نشده است، بنابراین نمیتوانید آن را به عنوان آدرس اصلی انتخاب کنید. اگر گیتهاب هر یک از این ایمیلها را در پیامهای کامیت در هر مخزن روی سایت ببیند، آنها را به حساب شما پیوند خواهد داد.
احراز هویت دو مرحلهای (Two Factor Authentication)
در نهایت، برای امنیت بیشتر، حتماً باید احراز هویت دو مرحلهای یا «2FA» را فعال کنید. احراز هویت دو مرحلهای مکانیزمی است که اخیراً محبوبیت زیادی پیدا کرده تا ریسک هک شدن حساب در صورت لو رفتن رمز عبور را کاهش دهد. فعال کردن این ویژگی باعث میشود گیتهاب از شما دو روش مختلف احراز هویت بخواهد، به طوری که اگر یکی از آنها درز کند، مهاجم نتواند به حساب شما دسترسی پیدا کند.
تنظیمات احراز هویت دو مرحلهای را میتوانید در تب Security در تنظیمات حساب خود بیابید.

اگر روی دکمه «Set up two-factor authentication» کلیک کنید، به صفحهای هدایت میشوید که میتوانید انتخاب کنید از اپلیکیشن تلفن همراه برای تولید کد ثانویه (یک «رمز عبور یکبارمصرف مبتنی بر زمان») استفاده کنید یا گیتهاب برای هر بار ورود، کد را از طریق پیامک ارسال کند.
پس از انتخاب روش مورد نظر و دنبال کردن دستورالعملها برای راهاندازی 2FA، حساب شما کمی امنتر خواهد شد و هر بار که وارد گیتهاب میشوید، علاوه بر رمز عبور باید کد مربوطه را نیز وارد کنید.