نسخه کنترل چیست – JC Chouinard

این پست بخشی از راهنمای کامل Git و Github است

سیستم کنترل نسخه ابزاری برای کمک به توسعه دهندگان در مدیریت تغییرات ایجاد شده در فایل ها و دایرکتوری ها است.

چندین سیستم کنترل نسخه وجود دارد، اما در این سری بیشتر بر روی Git تمرکز خواهیم کرد.

Version Control چیست؟

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

این به پیگیری تغییرات کد منبع در طول زمان کمک می کند. همچنین به انجام بیشتر آن کمک می کند. کنترل نسخه را می توان برای همکاری با دیگران، اما همچنین برای استقرار کد منبع از ماشین های محلی شما به برخی از سرورهای مرحله بندی، سپس به برخی از سرورهای آزمایشی و در نهایت برای تولید استفاده کرد.

این ابزار یکپارچه است که همچنین به شما امکان می دهد کد خود را در فضای ابری مستقر کنید.

چه کاری می توانید با کنترل نسخه انجام دهید

چندین چیز وجود دارد که کنترل نسخه می تواند به ساده سازی گردش کار توسعه نرم افزار کمک کند.

  1. پشتیبان گیری کنید همانطور که پیش می روید، پیشرفت کار را ذخیره کنید.
  2. یک تاریخچه نگه دارید. نسخه ای از پروژه را با نسخه ای که در حال ساخت آن هستید مقایسه کنید
  3. مشاهده تغییرات دقیقاً آنچه را که به پروژه تغییر کرده است، خط به خط مشاهده کنید.
  4. همکاری. کنترل نسخه به کاربر این امکان را می دهد که همزمان روی یک پروژه کار کند در حالی که بازنویسی کارهای یکدیگر را دشوار می کند.

مزایای کنترل نسخه

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

  • هیچ چیز از دست نمی رود: هر چیزی که در Git ذخیره می شود به گونه ای ذخیره می شود که هرگز گم نشود
  • بازگشت به تاریخ آسان است: Git تاریخچه تغییرات را با امکان بازگشت به هر نسخه ای ذخیره می کند
  • بازنویسی کار انجام شده دشوارتر است: Git سیستمی را ادغام می کند که به طور خودکار زمانی که کار شما با کار دیگری در تضاد است به شما اطلاع می دهد.
  • مقیاس کردن آسان کار انجام شده: Git کار انجام شده توسط تیم ها را به گونه ای هماهنگ می کند که مقیاس آن را آسان می کند.

چه کسی از کنترل نسخه استفاده می کند؟

  • تیم های DevOps
  • تیم های نرم افزاری
  • تیم های مهندسی
  • تیم های علم داده
  • سایر افراد آگاه به فناوری

دسته بندی سیستم های کنترل نسخه

دو دسته اصلی از سیستم های کنترل نسخه وجود دارد: متمرکز و توزیع شده.

سیستم های کنترل نسخه متمرکز (CVCS)

که در سیستم های کنترل نسخه متمرکز، کل پروژه در یک سرور مرکزی ذخیره می شود.

هر کاربر کد را از مخزن اصلی یا سرور دریافت می کند و تغییرات آن را به نسخه مرکزی ارسال می کند. برای هر تغییر، نیاز به اتصال با سرور است.

یادگیری کنترل نسخه متمرکز آسان تر از کنترل نسخه توزیع شده است.

سیستم های کنترل نسخه توزیع شده (DVCS)

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

تفاوت عمده این است که، به جای یک مخزن واحد که سرور است، در اینجا هر توسعه دهنده منفرد دارای یک مخزن است کپی ? کل تاریخ در رایانه محلی آنها.

اگرچه سیستم‌های کنترل نسخه توزیع‌شده پیچیده‌تر، بسیار سریع‌تر هستند، به عملکرد شبکه تکیه نمی‌کنند و دسترسی آفلاین را امکان‌پذیر می‌کنند.

سایر پست‌های این مجموعه در Git و Github