گیت – نرم افزار کنترل ورژن (قسمت اول: تاریخچه و نصب)

انواع نرم افزار های کنترل ورژن:

به طور کلی نرم افزار های کنترل ورژن سه نسل تقسیم می‌شوند:

نسل هاپشتیبانی از شبکهعملیاتکار همزمانمثال
نسل اولنداردیک فایل در هر لحظهقفل گذاشتن بر روی فایل ها
  1. RCS
  2. SCCS
نسل دوممرکزیچند فایل به طور همزمانMerge قبل از commit
  1. CVS
  2. SourceSafe
  3. Subversion
  4. Team Foundation Server
نسل سومتوزیع شدهبسته های تغییراتMerge قبل از commit
  1. Bazaar
  2. GIT
  3. Mercurial

عمر چهل ساله نرم افزار های کنترل ورژن، یک حرکت ثابت به سمت کار کردن همزمان بر روی فایل هاست. در نسل اول برای هر فایل یک قفل قرار داده می‌شد و امکان کار کردن همزمان روی فایل ها برای دو برنامه نویس میسر نبود. نسل دوم از نظر کار کردن همزمان روی فایل ها بهتر بود ولی یک مشکل قابل توجه وجود داشت، هر برنامه نویس قبل از اینکه بتواند روی سرور commit کند لازم بود که تغییرات سرور را , merge کند. در نسل سوم میشه commitها و merge ها را جدا از هم نگه داشت.

 

تاریخچه GIT:

از آنجایی که بحث مورد نظر ما گیت است، لازم است که تاریخچه گیت را بررسی کنیم.

کرنل لینوکس یک نرم افزار متن باز مجانی با سایز نسبتا بزرگ است که برای مدت زمان قابل ملاحظه ای (۱۹۹۱-۲۰۰۲) از توسعه آن کد ها توسط پچ فایل ها و آرشیو کردن آن ها مدیریت می شد. در سال ۲۰۰۲ برای ادامه‌ی توسعه‌ی کرنل لینوکس تصمیم گرفته شد که از نرم افزار کنترل ورژن BitKeeper استفاده شود.

در سال ۲۰۰۵ ارتباط بین تیم توسعه‌ی کرنل لینوکس و شرکت تجاری که مسئول توسعه‌ی BitKeeper بود، به دلیل تغییر وضعیت BitKeeper به یک نرم افزار پولی خراب شد. این اتفاق تلنگری بود به تیم توسعه لینوکس (به خصوص لینوس توروالدز سازنده‌ی لینوکس) که ابزار خودشان را بر پایه درس هایی که از BitKeeper گرفته بودند بسازند.

برخی از اهداف سیستم جدید:

  • سرعت
  • طراحی ساده
  • پشتیبانی قوی از توسعه غیر خطی (پروژه هایی که تعداد زیادی Branch دارند)
  • کاملا توزیع شده
  • توانایی برای هندل کردن پروژه هایی با سایز بزرگ مثل کرنل لینوکس

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

 

نصب GIT:

نصب گیت برای ویندوز:
ابتدا باید گیت را دانلود کنید: دانلود گیت برای ویندوز

بعد از دانلود آن مراحل عادی نصب نرم افزار در ویندوز را طی کنید. نگران آپشن های مختلف در طول مسیر نباشید. آپشن های پیش‌فرض معمولا برای اکثر کاربرها مناسب است.

بعد از اتمام نصب روی دسکتاپ (یا هر فولدر دیگری) کلیک راست کنید و Git Bash را انتخاب کنید. از این به بعد وقتی صحبت از اجرای دستوری در ترمینال میکنیم منظورمان درون Git Bash می باشد.

آموزش را از قسمت تنظیم ایمیل و نام کاربری ادامه دهید.

نصب گیت برای مک:
برای نصب گیت در مک لازم است که ابتدا  ابزار های کامندلاین xcode را نصب کنید (در صورتی که قبلا این کار را انجام داده اید از این مرحله صرفنظر کنید).

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


$  xcode-select --install

نرم افزار HomeBrew را نصب کنید. برای این کار دستور زیر را در ترمینال اجرا کنید:


$  /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

با استفاده از brew میتوانید GIT را نصب کنید:


$  brew install git

آموزش را از قسمت تنظیم ایمیل و نام کاربری ادامه دهید.

نصب گیت برای لینوکس:
برای نصب گیت در لینوکس ترمینال را باز کنید و دستورات زیر را اجرا کنید:

Debian / Ubuntu (apt-get):


$  sudo apt-get update
$  sudo apt-get install git

Fedora (dnf/yum):
اگر از ورژن های قدیمی فدورا استفاده میکنید:


$  sudo yum install git

یا اگر آخرین ورژن را دارید:


$  sudo dnf install git

تنظیم ایمیل و نام کاربری:
ابتدا مطمین شوید که گیت به درستی روی سیستم شما نصب شده است:


$  git --version
git version 2.15.1

درون ترمینال دستور های زیر را اجرا کنید تا نام و ایمیل شما به صورت گلوبال ثبت شود.

نکته: قسمت های مربوط به ایمیل و نام کاربری را به ایمیل و نام کاربری خودتان تغیر دهید.


$  git config --global user.name "Mahmood Bazdar"
$  git config --global user.email "mahmood.bazdar@gmail.com"

در ادامه، استفاده از گیت برای توسعه نرم افزار های خود را بررسی خواهیم کرد.

  • اصغر دوستی ۱۳۹۷/۰۷/۱۷

    من نصبش کردم ولی وقتی توی cmd دستور git --version رو اجرا میکنم خروجی ش مثل شما نیست. ادامه ی مطلب تون رو کی میذارین؟

    • محمود بازدار ۱۳۹۷/۰۷/۱۷

      فکر میکنم خروجی که به شما داده git version 2.19.1 باشه که طبیعی هست چون شما از ورژن جدید تری رو دانلود کردین. ادامه ی مطلب هم همین هفته روی وب سایت قرار داده میشه.

    • اصغر دوستی ۱۳۹۷/۰۷/۲۱

      سلام اقا چی شد پس؟ قسمت بعدی رو کی میذارین؟

    • محمود بازدار ۱۳۹۷/۰۷/۲۳

      پوزش بابت دیر شدن. شما میتونین ادامه ی مطلب رو اینجا بخونین: https://goo.gl/7ZJQLu

  • سید حسین عظیمی ۱۳۹۷/۰۷/۲۴

    محمود عزیز ممنون بابت آموزش ها مثل همیشه عالی هستین

    • محمود بازدار ۱۳۹۷/۰۷/۲۴

      لطف داری حسین عزیز. تلاش ما همیشه بر این بوده که بتونیم به دوستان کمک کنیم.

  • مریم ۱۳۹۷/۱۰/۱۲

    سلام بسیار عالی، استفاده کردیم

نظر شما چیست؟
فرم شما با خطا مواجه شده است:
    با تشکر. نظر شما با موفقیت ثبت شد و پس از تایید مدیریت نمایش داده خواهدشد.