گیت (به انگلیسی: Git) یک نرمافزار کنترل نسخه و از مدل نرمافزارهای آزاد و متنباز برای بازنگری کد منبع توزیع شده و مدیریت منبع کد است که برای دنبال کردن تغییر فایلهای کامپیوتری و دنبال کردن کارهای انجام شده روی آنها توسط افراد مختلف است. هدف اولیه این نرمافزار برای استفاده در پروژههای نرمافزاری بودهاست ولی میتوان از آن تنها برای دنبال کردن تغییر فایلها هم استفاده کرد.
گیت (به انگلیسی: Git) یک نرمافزار کنترل نسخه و از مدل نرمافزارهای آزاد و متنباز برای بازنگری کد منبع توزیع شده و مدیریت منبع کد است که برای دنبال کردن تغییر فایلهای کامپیوتری و دنبال کردن کارهای انجام شده روی آنها توسط افراد مختلف است. هدف اولیه این نرمافزار برای استفاده در پروژههای نرمافزاری بودهاست ولی میتوان از آن تنها برای دنبال کردن تغییر فایلها هم استفاده کرد.
گیت ابتدا برای توسعهٔ لینوکس توسط لینوس تروالدز به وجود آمد و اکنون پروژههای فراوانی از آن الهام گرفتهاند. هر دایرکتوری کاری در گیت یک مخزن کامل با تاریخچهٔ کامل تغییرها و قابلیت بازنگری آنها است و برای کار با آن نیازی به دسترسی به شبکه یا سرور مرکزی وجود ندارد.
ساختار گیت
در طراحی گیت از نرمافزارهای Bitkeeper و Monotone الهام گرفته شدهاست. گیت در ابتدا به صورت یک نرم نرمافزار کنترل نسخه سطح پایین نوشته شد به این صورت که دیگران بتوانند برای آن نرمافزار لایه رویی بنویسند. با این که گیت از bitkeeper تأثیرها و الهام زیادی داشتهاست در آن تلاش شدهاست که روشهای استفاده شده منحصر به فرد باشند.
از گیت میتوان به صورت یک سرور استفاده کرد. از جمله قابلیتهای سرور گیت میتوان به نمایش تاریخچه گیت در بستر وب و مدیریت تاریخچههای مختلف اشاره کرد.
میتوان از روی تاریخچه نسخهای از یک فایل به اشتراک گذاشته شده ساخت و افراد مختلف به آن دسترسی پیدا کنند. همچنین با نصب نرمافزار Git میتوان از راه دور به سرور دسترسی پیدا کرد.
دستورها
برای استفاده از گیت ابتدا باید آن را نصب کرد که طریقه نصب برای سیستمهای مختلف متفاوت است.
در ادامه تعدادی از دستورها پرکاربرد گیت آمدهاست.
برای راهنمایی گرفتن دربارهٔ یک دستور:
git help
برای اجرای تنظیمها از config استفاده میشود. جزئیات استفاده از این دستور را میتوان با دستور زیر بدست آورد.
git help config
دستور ایجاد پوشه اصلی:
git init <آدرس پوشه اصلی>
دستور استفاده از یک گیت از قبل ساخته شده:
git clone ssh://<user>@<host>/path/to/repo.git
دستور اضافه کردن فایل جدید:
git add <نام فایل>
دستور حذف فایل:
git rm --cached <نام فایل>
دستور مشاهده وضعیت:
git status
بررسی تفاوتها در کد نوشته شده و اعمال نشده:
git diff
دستور اطلاع از تاریخچه:
git log
دستور قراردادن تغییرها:
git push
دستور اعمال تغییرها:
git commit
دستور دریافت تغییرها از روی تاریخچه:
git pull
دستور الحاق برچسب:
git tag
دستور بازگرداندن یک فایل به آخرین وضعیت ذخیره شده:
git checkout HEAD <نام فایل>
برای برگرداندن تغییرهای یک اِعمال خاص:
git revert <commit-id>
اصلاح یک اِعمال:
git commit -amend
دستور ادغام:
git merge <branch_name>
دستور ذخیره:
git stash pop
چند سورس کنترل معروف که با گیت کار میکنند:
گیتلب (به انگلیسی: GitLab) یک سکو توسعهٔ عملیات است که سرویس میزبانی گیت -بهرهٔمند از ویکی، پیگیری موضوع، یکپارچهسازی مداوم و استقرار پیوسته- را ارائه میکند. محصول گیتلب با مجوز متنباز شرکت گیتلب در دسترس عموم قرار دارد؛ بنابراین به دیگر افراد امکان خودمیزبانی میدهد. این نرمافزار در ۱۶ مهر ۱۳۹۰ (۸ اکتبر ۲۰۱۱ م.) با همکاری دیمیتری زاپروژتس و ولری سایزوف پایهٔگذاری شد. با الهام از گیتهاب و با اعتقاد به شعار «همه میتوانند مشارکت کنند» با زبان برنامه نویسی روبی بنیان نهاده شد.
گیتهاب (به انگلیسی: GitHub) یک سرویس میزبانی وب برای پروژههایی است که از سیستم سورس کنترل گیت استفاده میکنند. گیتهاب با استفاده از روبی آن ریلز و ارلنگ ساخته شدهاست. این سرویس هم دارای گزینه رایگان برای پروژههای متنباز و هم پولی برای پروژههای تجاری است. توسعهٔ پلت فرم گیتهاب در اکتبر ۲۰۰۷، آغاز شد. گیتهاب در سال ۲۰۰۸ توسط تام پرستون، کریس ونسترت و پی جی هیت پایهگذاری گردید و بر اساس گزارشی در ژوئن ۲۰۱۱، این سرویس محبوبترین سرویس ارائهدهنده گیت است.
منابع: