گیت هاب (GitHub) و گیت (Git) چیست؟
گیت (Git) چیست؟
Git یک سیستم کنترل نسخه (Version Control System) متن باز است که توسط Linus Torvalds (سازنده هسته سیستم عامل لینوکس) نوشته شده است. این سیستم به برنامه نویسان کمک می کند تا کدهای خود را به راحتی مدیریت کنند و با توجه به تغییرات ایجاد شده، نسخه نرم افزار را مشخص کنند. از ویژگی های دیگر گیت می توان به امکان مشاهده تاریخچه تغییرات، بازگردانی کدها به تغییرات قبلی و امکان توسعه یک نرم افزار به صورت گروهی اشاره کرد. برنامه نویسانی که به صورت تیمی کار می کنند حتما باید نحوه با استفاده از این سیستم بلد باشند. امروزه نرم افزار های بسیاری به با استفاده از گیت و گیت هاب توسعه می یابند.
گیت هاب (GitHub) چیست؟
GitHub یک پلتفرم میزبانی کد برای مدیریت نسخه است که از Git استفاده می کند و به برنامه نویسان و توسعه دهندگان مختلف اجازه می دهد تا با همکاری یکدیگر بر روی یک پروژه کار کنند. سایت GitHub در سال ۲۰۰۸ میلادی ایجاد شد و بعد از ۳ سال یعنی در ژوئن ۲۰۱۱ به محبوب ترین سوریس کنترل نسخه در جهان تبدیل شد. این سرویس امکان ایجاد Repository عمومی (رایگان) و خصوصی (پولی) را به کاربران می دهد. مخزن عمومی به گونه ای است که کل افراد (حتی کسانی که عضو گیت هاب نیستند) می توانند به پروژه شما دسترسی داشته باشند. اما در مخزن خصوصی فقط کسی که آن را ایجاد کرده و افرادی که به آن ها اجازه داده شده است، می توانند به پروژه دسترسی داشته باشند.
GitHub نوعی شبکه اجتماعی برای برنامه نویسان و توسعه دهندگان است و شما می توانید با عضویت در آن سایر کاربران را Follow کنید، به کد های او امتیاز دهید و یا به یک دیگر پیام ارسال کنید.
کلمات پرکاربرد
در زیر برخی از کلیدواژه های پرکاربرد مربوط به Git و GitHub را مشاهده می کنید:
- Repository : به معنای مخزن است و همانطور که از اسم آن نیز مشخص است، جایی برای نگه داری و مدیریت سورس پروژه است.
- Commit : با استفاده از کامیت هنگامی که تغییرات اعمال شده در کد پروژه به مرحله نهایی رسید با استفاده از کامیت آن را به Repository اضافه می کنیم. هر کامیت به همراه یک کامنت اضافه می شود. این کامنت توضیحاتی در مورد علت کامیت شدن ارائه می کند. برای مثال اگر پروژه در بخش لاگین باگ داشته باشد و بعد از رفع آن بخواهید آن را کامیت کنید، کامنت شما به این صورت خواهد بود: Fixes login page bug.
- Branch: به معنای شاخه است. در هنگام ساخت یک پروژه با استفاده از گیت، شما در ابتدا یک شاخه اصلی به نام master دارید. در صورت نیاز می توانید شاخه مورد نظر را اضافه کنید. برای مثال اکثر پروژه ها یک شاخه به نام develop دارند که مربوط به مرحله توسعه است و زمانی که کامل شود با شاخه اصلی merge می شود.
- Merge : به معنای ادغام دو شاخه (Branch) با یک دیگر است.
- Fork : به معنای کپی کردن مخزن (Repository) از یک حساب کاربری به یک حساب کاربری دیگر است. این موضوع باعث می شود تا سایر توسعه دهندگان بتوانند بدون ایجاد تغییر در کد اصلی پروژه، آن را توسعه دهند.
- Pull Request : بعد از این که توسعه دهنده دیگر تغییرات مورد نظرش را بر روی نسخه Fork شده اعمال کرد، یک درخواست (Pull Request) به توسعه دهنده اصلی پروژه ارسال می کند. در صورتی که توسعه دهنده اصلی موافق تغییرات ایجاد شده باشد، می تواند آن را با سورس اصلی Merge کند.
- Issue : کاربران بعد از استفاده از پروژه می توانند در صورت مشاهده باگ یا داشتن سوالی در مورد پروژه آن را در این بخش مطرح کنند.
سایت های مشابه
در زیر برخی از سایت های که برای مدیریت و اشتراک گذاری کدها ایجاد شده اند را مشاهده می کنید:
- GitLab.Com
- Bitbucket.Org
- SourceForge.Net
- GitKraken.Com
نوشته گیت هاب (GitHub) و گیت (Git) چیست؟ اولین بار در سورس سرا - آموزش برنامه نویسی. پدیدار شد.