شما در آستانه صرف چندین ساعت از زندگی خود برای خواندن درباره Git هستید. بیایید یک دقیقه وقت بگذاریم و توضیح بدهیم که چه چیزی در پیش رو دارید. در اینجا یک خلاصه سریع از ده فصل و سه پیوست این کتاب آمده است.
در فصل 1، درباره Version Control Systems (VCSs) و مبانی Git صحبت میکنیم — نه چیزهای فنی، فقط اینکه Git چیست، چرا در دنیایی پر از VCS به وجود آمد، چه چیزی آن را متمایز میکند و چرا افراد زیادی از آن استفاده میکنند. سپس توضیح میدهیم چطور Git را دانلود و برای اولین بار راهاندازی کنید (اگر از قبل روی سیستم شما نصب نیست).
در فصل 2، به استفاده پایهای از Git میپردازیم — اینکه در ۸۰٪ موارد رایج چگونه از Git استفاده کنید. بعد از خواندن این فصل، شما باید بتوانید یک repository را clone کنید، تاریخچه پروژه را ببینید، فایلها را تغییر دهید و تغییرات خود را اعمال کنید. اگر در همین نقطه کتاب ناپدید شود، شما باید در همان مدت زمانی که برای خرید یک نسخه دیگر صرف میکنید، بتوانید از Git به شکلی کاربردی استفاده کنید.
فصل 3 درباره مدل branching در Git است؛ چیزی که اغلب به عنوان ویژگی مرگبار (killer feature) آن توصیف میشود. اینجا یاد میگیرید چه چیزی واقعاً Git را از بقیه جدا میکند. وقتی تمام شد، شاید بخواهید لحظهای در سکوت فکر کنید که قبل از branching در Git چطور زندگی میکردید!
فصل 4 به Git روی server میپردازد. این فصل برای کسانی است که میخواهند Git را در سازمان خود یا روی یک سرور شخصی برای همکاری راهاندازی کنند. همچنین گزینههای hosted مختلف را بررسی میکنیم اگر ترجیح بدهید دیگران این بخش را مدیریت کنند.
فصل 5 به صورت کامل درباره distributed workflows و روش انجام آنها با Git صحبت میکند. وقتی این فصل را تمام کنید، باید بتوانید به شکل حرفهای با چندین remote repository کار کنید، از Git روی ایمیل استفاده کنید و بهخوبی شاخهها و patchهای متعدد را مدیریت کنید.
فصل 6 سرویس GitHub و ابزارهای آن را به صورت عمیق بررسی میکند. شامل ثبتنام و مدیریت حساب، ساخت و استفاده از repositoryها، جریانهای کاری رایج برای مشارکت در پروژهها و پذیرش مشارکت در پروژههای خودتان، رابط برنامهنویسی GitHub و نکات کوچک و کاربردی برای راحتتر شدن کارتان خواهد بود.
فصل 7 به دستورات پیشرفته Git اختصاص دارد. اینجا درباره مواردی مثل تسلط بر دستور ترسناک reset، استفاده از جستجوی دودویی برای پیدا کردن باگها، ویرایش تاریخچه، انتخاب نسخهها با جزئیات و بسیاری موارد دیگر یاد خواهید گرفت. این فصل دانش شما از Git را کامل کرده و شما را به یک استاد واقعی تبدیل میکند.
فصل 8 درباره پیکربندی محیط Git متناسب با نیاز شماست. شامل راهاندازی hook scriptها برای اجرای سیاستهای سفارشی و استفاده از تنظیمات محیطی تا بتوانید به سبک دلخواه خود کار کنید. همچنین درباره ساخت اسکریپتهای اختصاصی برای enforce کردن یک سیاست commit هم صحبت خواهیم کرد.
فصل 9 به Git و سایر VCSها میپردازد. این شامل استفاده از Git در دنیای Subversion (SVN) و تبدیل پروژهها از سایر VCSها به Git است. هنوز سازمانهای زیادی از SVN استفاده میکنند و قصد تغییر ندارند، اما در این نقطه شما قدرت شگفتانگیز Git را یاد گرفتهاید — و این فصل به شما نشان میدهد چطور در صورت نیاز با یک SVN server کار کنید. همچنین به نحوه import پروژهها از سیستمهای مختلف میپردازیم، اگر موفق شدید بقیه را هم به مهاجرت به Git متقاعد کنید.
فصل 10 به اعماق زیبای ولی پیچیده Git internals میرود. حالا که همهچیز درباره Git را میدانید و میتوانید قدرتمند و روان از آن استفاده کنید، میتوانید ادامه دهید و ببینید Git چگونه objectها را ذخیره میکند، object model چیست، جزئیات packfileها، پروتکلهای سرور و موارد دیگر. در طول کتاب، هرجا که لازم باشد به بخشهای این فصل ارجاع میدهیم. اگر مثل ما علاقهمند به جزئیات فنی هستید، شاید بخواهید فصل 10 را اول بخوانید. انتخاب با شماست.
در پیوست A، نمونههای مختلفی از استفاده Git در محیطهای خاص بررسی میکنیم. این شامل GUIها و محیطهای برنامهنویسی (IDE) است که ممکن است بخواهید Git را در آنها استفاده کنید. اگر به استفاده از Git در shell، IDE یا text editor علاقهمندید، این بخش را ببینید.
در پیوست B، به scripting و گسترش Git از طریق ابزارهایی مثل libgit2 و JGit میپردازیم. اگر به ساخت ابزارهای پیچیده و سریع اختصاصی نیاز دارید و میخواهید دسترسی سطح پایین به Git داشته باشید، اینجا دقیقاً همان جایی است که باید ببینید.
در نهایت، در پیوست C، تمام دستورات اصلی Git را یکییکی بررسی میکنیم و مرور میکنیم در کجای کتاب به آنها پرداختهایم و چه استفادهای از آنها کردهایم. اگر میخواهید بدانید یک دستور خاص Git در کجای کتاب استفاده شده، اینجا بهترین راهنماست.
بیایید شروع کنیم.