نرخ کلیک (CTR) چیست ؟ چگونه CTR را افزایش دهیم؟
سپتامبر 15, 2020
Error virtual memory low
سپتامبر 15, 2020

Github (گیت هاب) چیست ؟

Github (گیت هاب) چیست ؟

گیت هاب در واقع محلی برای قرار گیری پروژه ها در git  است یعنی درواقع Github یکی از هاستینگ های git است. گیت هاب (Github) واژه ای است که کم و بیش دردنیای برنامه نویسی و یا حتی طراحی سایت و افزونه ها می شنویم وشاید تا کنون کدها و یا برنامه هایی را از آن دانلود کرده باشیم. Github یک سیستم مدیریت پروژه و دسته بندی کد است که به توسعه دهندگان نرم افزار کمک می کند علاوه بر این که امکان مشارکت روی پروژه های نرم افزاری داشته باشند بتوانند به تاریخچه ای از کدهایی که قبلا نوشته اند نیز دست پیداکنند.

 

گیت هاب از دوبخش گیت (git) و  هاب (hub) تشکیل شده است ، برای اینکه Github را یادبگیریم باید این دوجزء را درک کنیم:

گیت (git) اولین بخش کلمه  Github و یکی ازمحبوب ترین سیستم کنترل ورژن دنیا است. بخش زیادی از آن با زبان C نوشته شده است. از git  هم به صورت آنلاین و به صورت لوکال می توانیم استفاده کنیم.

git

git چیست ؟

گیت (git) اولین بخش کلمه  Github و یکی ازمحبوب ترین سیستم کنترل ورژن دنیا است. بخش زیادی از آن با زبان C نوشته شده است. از git  هم به صورت آنلاین و به صورت لوکال می توانیم استفاده کنیم. درصورتی که به صورت آنلاین از آن استفاده کنید به شما قابلیت این را می دهد که درهرجا باشید به کدهای های خود دسترسی داشته باشید و کدهای شما هیچ وقت گم نمی شودو امکان این را به شما می دهد که دو نفر به صورت هم زمان نیز بتوانند در هرجای دنیا روی یک کد کار کنند.

Hub چیست ؟  

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

این مقاله رو هم بخونید
طراحی گرافیک

گیت (git) اولین بخش کلمه  (گیت هاب)Github و یکی ازمحبوب ترین سیستم کنترل ورژن دنیا است. بخش زیادی از آن با زبان C نوشته شده است. از git  هم به صورت آنلاین و به صورت لوکال می توانیم استفاده کنیم. درصورتی که به صورت آنلاین از آن استفاده کنید به شما قابلیت این را می دهد که درهرجا باشید به کدهای های خود دسترسی داشته باشید و کدهای شما هیچ وقت گم نمی شودو امکان این را به شما می دهد که دو نفر به صورت هم زمان نیز بتوانند در هرجای دنیا روی یک کد کار کنند.  Hub چیست ؟    دومین بخش کلمه Github است. در حالت کلی طبق تعریف فرهنگ لغت آکسفورد ، به طور خلاصه هاب یعنی مرکز یک فعالیت ، منطقه و یا یک شبکه. بنابراین Github یعنی مرکزی برای گیت ، مکانی که تمام فعالیت های مربوط به گیت حول محور آن رخ می دهد.

مفاهیم مهمی که برای کار با  Github نیاز به دانستن آن داریم ؟

Repository(مخزن) : به قسمتی که کدهای خود را داخل آن قرار می دهیم وgit باتوجه به آن Repository تاریخچه اتفاق هایی که در آن رخ می دهد را برای شما نگه می دارد.مثلا زمانی که شما می خواهید یک پروژه جدید را شروع و به git اضافه کنید ، باید یک Repository بسازیم و فایلهای پروژه خود را داخل آن قراردهیم.

Trackهرفایلی که داخل Repository قرار دارد در دوحالت track  وuntrack است. درحالت track به git می گوییم که اگر تغییراتی در فایل من به وجود آمد، تاریخچه آن را برای من نگه دارد. ولی اگرفایلی در Repository در حالت untrack قرار داشت حتی اگر فایل پاک شود یا تغییراتی درآن انجام دهید به git مربوط نیست(تاریخچه ای از تغییرات و کد های قبلی موجود نمیباشد).

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

Confilict: به عنوان مثال اگر دونفر دریک پروژه یک خط را تغییر داده باشند ، نفر اول در همان خط ورژن را 2 کزده باشد و نفر بعد نیز در همان خط ورژن را 3 کرده باشد در اینجا git به شما می گوید دو نسخه ای که باهم ادغام کرده اید باهم تناقض دارند و باید یکی از ورژن ها را انتخاب کنید.

Pull : بعد از اینکه شما یک سری تغییرات روی پروژه را pull کردید اگر بقیه افراد هم بخواهند که این تغییرات برای کد آن ها هم اعمال شود باید تغییرات ایجاد شده را به سمت خود بکشند یا push کنند.

این مقاله رو هم بخونید
خدایان مجازی این روز ها را بشناسید

Push : درصورتی که شما از git به صورت آنلاین استفاده می کنید.در روش push کردن تغییرات را به سمت سرورهل می دهید(آپلود می کنید) تا بقیه نیز از تغییرات شما استفاده کنند.

Branch(شاخه) :branch یا شاخه در واقع یک کپی از شاخه اصلی است . ازاین شاخه ها برای اعمال تغییرات و اضافه کردن ویژگی ها استفاده می شود که از شاخه اصلی مجزا است. بعد از این که این تغییرات آماده شدند می توانید آن ها را با پروژه اصلی ادغام (merge) کنید که با pull کردن انجام می شود.

Clone : در صورتی که شما بخواهید از یک پروژه در کپی بگیرید ودر سیستم خود روی آن کار کنید به آن clone  می گویند.

Fork :اما اگر شما ازیک پروژه کپی بگیرید و نخواهید تغییراتی روی آن پروژه اصلی اعمال شودبه آن fork کردن می گویند.

Revert : در صورتی که شما یک commit را زده باشید ولی پشیمان شده باشید و بخواهید برگردید revert آخرین تغییرات شما را

جنبه های شبکه اجتماعی گیت هاب :

یکی از امکانات Github داشتن شبکه اجتماعی است ، هر کاربر در   Github یک پروفایل و یک رزومه مخصوص خود دارد که آثار پیشین و همکاری هایی را که توسط درخواست های ادغام انجام داده است را نشان می دهد.

کاربرد های گیت هاب :

گیت هاب تنها مختص برنامه نویس ها نیست . هرکس که بخواهد پروژه خود را به صورت بهینه مدیریت کند و به طور اشتراکی با سایر اعضای تیم کار کند می تواند از Github استفاده کند.

ابزارهای Github :

  • ابزارپیگیری تغییرات

Diffs : می توانید به صورتی گرافیلی تغییرات به وجود آمده در دو نسخه را ببینید مثلا خط هایی که اضافه یا کم شده اند را برای شما رنگی می کند، و دونسخه از کد را کنارهم قرار می دهد.

این مقاله رو هم بخونید
آموزش رفع خطای images optimization در GTmetrix

 History : تاریخچه تغییرات را به صورت گرافیکی برای شما نمایش می دهد.

Blame : درصورتی که فایلی را دارید که تغییری در آن ایجاد شده است ولی مطمئن هستید که خودتان آن تغییرات را انجام نداده اید با استفاده از blame می توانید بفهمید که چه کسی این تغییرات را ایجاد کرده است.

Graghs : در یک پروژه به ما می گوید که چه کسانی در چه تاریخی چه commit هایی زده است. و چقدر درصد از پروژه را چه کسی انجام داده است.

  • ابزارهای پرسش و پاسخ

Open issues : درصورتی در مورد یک پروژه سوالی داشتید می توانید در Github در آن پروژه یک issue باز کنید و سوال خود را بپرسید و صاحب پروژه می تواند به شما پاسخ دهد.

  • ابزارهای مدیریت پروژه

 Tasks : وقتی پروزه را به بخش های کوچک تقسیم می کنید به این قسمت های کوچه یک task گفته می شود این task ها را می توان وارد محیط Github کنید و آن را مدیریت کنید یا به اعضای تیم واگذار کنید و تقسیم وظایف انجام دهید، همچنین می توانید روی هر task ، lable بزنید که مربوط به چه چیزی است .

Follow projects : این ابزار به شما کمک می کند همانند شبکه های اجتماعی بتوانید پروژه ها را دنبال کنید.

مطالب قبلی :

نرخ کلیک (CTR) چیست ؟ چگونه CTR را افزایش دهیم؟

API (ای پی آی) چیست ؟ چه کاربردی دارد؟

راه های کسب درآمد از طریق اینستاگرام

آموزش رفع خطای add expires headers در gtmetrix

 

Aida Parvaresh
Aida Parvaresh
آیداپرورش هستم،علاقمند به تکنولوژی و تولید محتوا،مدتیه که با تیم خوب هفت وب همکاری دارم.

1 Comment

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *