آموزش طراحی و برنامه نویسی وب

آموزش سریع و ساده git

آموزش کاربردی git

آموزش سریع و ساده git، در این آموزش نحوه راه اندازی و اجرای git را به زبان ساده و همراه مثال توضیح خواهیم داد.

آموزش سریع و ساده git

آموزش سریع و ساده git

git چیست؟

git رو لینوس توروالدز نوشته یکی از خدایان برنامه نویسی که کرنل لینوکس رو هم خودش نوشته، git الزاما به دنیای نرم افزار متعلق نیست و در کارهای مختلف مثل نوشتن پایان نامه می تونیم ازش استفاده کنیم.

 

چرا باید از git استفاده کنیم؟

git یک ورژن کنترل سیستم هست، این یعنی چی؟ معمولا زمانی که یک کار طولانی رو شروع می کنیم اون کار برای ما شامل مراحلی خواهد شد مثلا یک طرح گرافیکی رو در نظر بگیرید که تمام کردید و اسمش رو می زارید “final” حالا بعد چند روز یه سری تغییرات دیگه می دید و نامش رو می زارید “final2” و این روند ادامه پیدا می کنه، برای مدیریت این مراحل انجام git یک ابزار بینظیر است.

 

نصب git؟

برای نصب گیت در ویندوز کافیه فایل نصبی اون رو از اینجا(دانلود git) دریافت و نصب کنید. نصب آن بسیار ساده و به قول معروف next, next هست.

بعد از نصب جهت اطمینان وارد محیط CMD بشید و دستور “git -v” رو وارد کنید، اگر به درستی نصب کرده باشید ورژن نصب شده را مشاهده خواهید کرد.

 

git چگونه کار می کند؟

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

خوب بریم ببینیم الان چطور می تونیم بعد از نصب یک git ایجاد کنیم؟

برای این کار وارد پوشه پروژه خودمون میشیم و دستور زیر رو برای ایجاد git می نویسیم:

				
					git init
				
			

با این دستور یک پوشه با نام git در مسیر پروژه ما ایجاد میشه، در نظر داشته باشید که پوشه git به صورت پیشفرض مخفی هست و برای نمایش اون باید از طریق تنطیمات folder option در کنترل پنل ویندوز اقدام کنیم.

حالا برای اینکه بتونیم وضعیت git ایجاد شده رو ببینیم از دستور زیر استفاده می کنیم:

				
					git status
				
			

git با مفهومی کار میکنه به نام “commit” و “”stage”، یعنی چی؟

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

ما برای اضافه کردن فایل یا تغییرات ابتدا باید با استفاده از دستور “add” فایل موردنظر رو  به “stage” گیت منتقل کنیم و در نهایت با دستور “commit” اون رو به آرشیو ببریم.

در ادامه با ذکر مثال این موارد رو رو شرح میدم.

————————————————————————————————————————————————

مراحل معرفی کردن فایل ها و تغییرات در git

با مثال پیش می ریم تا راحت تر مطالب رو درک کنیم.

بعد از اینکه git رو در پروژه خودمون ایجاد کردیم و یا تغییری در فایلی انجام دادیم وارد محیط CMD میشیم و با دستور زیر فایل مورد نظر رو به git اضافه می کنیم:

				
					git add index.php
//or
git add "*.php" //All PHP Files which have edited
//or
git add -A //All files have edited
				
			

حالا برای اینکه فایل اضافه شده رو به آرشیو git منتقل کنیم از دستور زیر استفاده می کنیم:

				
					git commit -m 'index.php file added!'
				
			

و به همین سادگی تونستیم فایل خودمون رو به git معرفی کنیم. با اضافه کردن “m-” در دستور “commit” یک توضیح در مورد فایلی که می خوایم اضافه کنیم میدیم تا در آینده اگر نوع تغییرات رو فراموش کردیم و یا تیمی ما مراجعه کرد بدونیم چه تغییراتی برای این فایل اتفاق افتاده. هر commit یک کد منحصر به فرد یا unique داره که برای هر کاربر نیز متفاوته.

نکته مهم: برای هر تغییری یک commit مجزا در نظر بگیرید، بدین شکل کار منظم تر و تمیزتر خواهد بود.

حالا برای اینکه وضعیت تغییرات git رو بعد از اضافه کردن فایل بببینیم از دستور “git status” که در بالا اشاره کردیم بهره می بریم.

دستور دیگری داریم با نام “git log” که گزارش کارهایی رو که انجام دادیم بهمون میده.

دستور git log

دستور git log

————————————————————————————————————————————————

دستورات پرکاربرد در git

در ادامه دستورات رایج در git رو بررسی می کنیم.

دستور “git diff HEAD”
فرض کنید در یک فایل با نام “index.html” تغییراتی رو ایجاد کردیم که الان فراموش کردیم اون تغییرات چی بودند، برای اینکه متوجه شیم چه تغییراتی در فایل اتفاق افتاده از این دستور استفاده می کنیم.

دستور git diff HEAD

دستور git diff HEAD


  حرف a در اینجا نسخه اولیه فایل و حرف b نسخه فایل با تغییرات جدید هست. عبارت “bingo” محتوایی جدیدی است که در فایل قرار گرفته.

دستور “git diff –staged”
فرض کنید با استفاده از این دستور به git میگم نشون بده فایل هایی که در stage هستند چیشون تغییر پیدا کرده یا عوض شده.

دستور git diff --staged

دستور git diff –staged

دستور “git reset”
اگر فایلی رو به اشتباه وارد stage کرده باشیم یا اصلا بخوایم کلا از stage خارجش کنیم از دستور git reset استفاده می کنیم.

دستور git reset

دستور git reset

دستور “git checkout”
اگر بخوایم کلا فایلی رو به حالت اولی که commit شده برگردونیم، یعنی نسخه اولیه خودش، از دستور git checkout به صورت زیر استفاده می کنیم.

دستور git checkout

دستور git checkout

————————————————————————————————————————————————
آشنایی با شاخه ها یا برنچ ها(Branch) در git

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

روند کارکرد شاخه یا branch در git

روند کارکرد شاخه یا branch در git

اما در کارهای تیمی شاخه یا شاخه های دیگری برای هر فرد ایجاد می کنیم، به عنوان مثال مدیر بر روی شاخهه master در حال تکمیل پردازشی است که متوجه می شود نیاز به “captcha” در فرم های لاگین و ثبت نام دارد.

برای اینکه این فرایند رو به هم تیمی خود بسپارد یک شاخه دیگر با نام دلخواه ایجاد می کند و در نهایت تغییرات را با commit نهایی خود merge می کند، همانند تصویر زیر:

کار با شاخه ها در گیت

کار با شاخه ها در گیت

 

بدین شکل می تواین به راحتی پروژه رو به صورت تیمی و بدون تداخل پیش ببریم.

خوب بریم ببینیم دستورات کار با branch به چه شکل است.

————————————————————————————————————————————————
دستورت کار با شاخه ها یا branch در git

برای اینکه بفهمیم در کدام شاخه هستیم از دستور “git branch” استفاده می کنیم.

حالا اگر بخوایم یک شاخه جدید به نام “captcha” ایجاد کنیم کافیه دستور زیر رو بنویسیم.

				
					git branch captcha
				
			
ایجاد شاخه یا branch در گیت

ایجاد شاخه یا branch در گیت

 

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

حالا چطور می تونیم وارد شاخه ای که ساختیم بشیم، کافیه از دستور checkout به شکل زیر استفاده کنیم:

				
					git checkout captcha
				
			
تغییر شاخه در گیت

تغییر شاخه در گیت

 

حالا وارد شاخه جدیدمون که همان captcha هست شدیم و می تونیم تغییرات دلخواه یا مورد نیاز پروژه رو انجام بدیم، در نهایت پس از commit کردن آنها وارد شاخه master میشم و با استفاده از دستور merge تغییراتی که در شاخه captcha انجام داده بودم رو به شاخه master اضافه می کنم.

				
					git merge captcha
				
			

در اینجا من یک فایل header.html را در زمانی که در شاخه captcha بودم به پروژه اضافه کردم و بعد وارد شاخه master شدم و اون رو باهاش merge کردم.

merge کردن شاخه ها در git

merge کردن شاخه ها در git

با استفاده از دستور “ls” می تونیم لیست فایل های موجود در شاخه جاری رو ببینم.

کاربرد دستور ls

کاربرد دستور ls

برای حذف فایل از دستور “rm” کمک می گیریم و در صورت مواجه شدن با هرگونه خطا می تونیم از “f-” برای حذف اجباری استفاده کنیم.

				
					git rm contact.html
//or
git rm contact.html -f


				
			

برای نمایش محتوای فایل از دستور “cat” به شکل زیر استفاده می کنیم.

				
					git cat index.html
				
			

جهت حذف یک شاخه یا branch از دستور “d-“ به شکل زیر استفاده می کنیم.

				
					git branch -d test
				
			
————————————————————————————————————————————————

کار با git در github

تا اینجا ما git خودمون رو در سورس پروژه ها ایجاد و استفاده می کردیم اما اگر نیاز باشه این git در شبکه ای مثل شبکه اینترنت قرار بگیره نیاز هست دستورات دیگری رو یاد بگیریم.

فرض کنید یک repository در github ایجاد شده و پروژه موردنظر در آن قرار گرفته، برای دریافت آن در سیستم می توان آن را به صورت مستقیم دانلود کرد یا از لینک ارائه شده توسط github استفاده کرد.

کار با git در github

کار با git در github

 

با استفاده از دستور “clone” و لینک “repository” می تونیم پروژه مورد نظر رو دریافت کنیم، قبلش یک پوشه با نام پروژه در مسیر دلخواه ایجاد و با استفاده از دستور زیر فایل ها رو دریافت می کینم:

				
					git clone YOURLINK
git clone https://github.com/Payam-Hayati/Laravel-news.git
				
			

از اینجا به بعد همانند زمانی که git رو در روت اصلی پروژه ایجاد می کردیم عمل می کنیم. و در نهایت برای اینکه تغییرات رو در github اعمال کنیم، دستور push رو به کار می بریم:

				
					git push origin master
				
			

حالا اگر شخصی به صورت مستقیم در گیت هاب تغییراتی ایجاد کرد، مثلا فایل readme رو تغییر داد و ما خواستیم این تغییرات رو به شاخه master یا پروژه اضافه کنیم از دستور pull استفاده می کنیم، یعنی هر آنچه که هست رو بکش از origin و به master اضافه کن:

				
					git pull origin master
				
			
 
————————————————————————————————————————————————

 

برچسب یا tag گذاری در git

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

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

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

				
					git tag -a v1.0 -m 'this is first version of my  app!'
				
			

برای نمایش نسخه های ایجاد شده کافیه دستور “git tag” رو وارد کنید.

نکته اینکه به صورت پیشفرض نسخه های ایجاد شده push نمی شوند و برای push کردن روی origin از یکی از دستورات زیر استفاده می کنیم:

				
					git push origin v1.0
//or
git push origin --tags
				
			

جمع بندی

در این مقاله سعی کردم دستورات پرکاربرد git رو توضیح بدم. امیدوارم این مطلب براتون مفید واقع شده باشه.

لطفا اگر نظر و پیشنهادی در خصوص مطالب و پیشبرد آنها دارید خوشحال میشم در قسمت دیدگاه ها مطرح بفرمایید.

——————————————

مقاله های آموزشی فریم ورک لاراول

سایت رسمی لاراول

کاربرد HTML

 jQuery

جاوا اسکریپت در 1 ساعت

کاربرد CSS

آموزش ReactJS

صفر تا صد PHP

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

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