گیت چیست و چه کاربردی دارد
مقالات برنامه نویسیGit چیست و آیا یادگیری آن برای طراحان و برنامه نویسان الزامی است یا نه ؟ چگونه باید از Github استفاده کنیم ؟ مدت زمان یادگیری گیت چقدر است ؟ در این مقاله بخوانید !
شاید بتوان گفت گیت مهم ترین و کاربردی ترین نرم افزار برای کنترل ورژن است اما منظور از کنترل ورژن چیست ؟ تصور کنید که در حال کدنویسی یک پروژه بزرگ هستید و این پروژه چندین هفته کار خواهد داشت .خب شما ممکن است در حین کدنویسی نیاز داشته باشید تا از مراحل مختلف پروژه برای خودتان بکاپ داشته باشید .
مثلا پروژه شما دو قسمت است که قسمت اول آن مربوط به قسمت ظاهر و قسمت دوم مربوط به پنل مدیریت پروژه است و شما قصد دارید تا از قسمت اول یک بکاپ و از قسمت دوم یک بکاپ دیگر تهیه کنید . در این شرایط خب شما میتوانید با کپی پیست کردن این کار را انجام دهید اما اگر تعداد بکاپ هایی که نیاز دارید بیشتر شود چه اتفاقی خواهد افتاد ؟
اگر پروژه بسیار بزرگ باشد که یک تیم چند نفره روی آن کار کنند چگونه خواهد بود ؟ در این شرایط ملزم به یادگیری سیستم های کنترل نسخه همچون گیت هستیم . گیت یک نرم افزار است که روی سیستم شما و به شکل لوکال کار میکند وبرای راه اندازی یا استفاده از آن نیاز به سرور نداریم . پس از نصب نرم افزار گیت میتوانید از طریق قراردادن پروژه خودتان تحت کنترل گیت و اجرای برخی دستورات داخل خط فرمان ویندوز یا نرم افزاز GitBash که مربوط به خود گیت است شروع به تهیه نسخه ها و ورژن های مختلف از پروژه تان نمائید .
آیا یادگیری گیت سخت است ؟
برخی اینگونه تصور میکنند که یادگیری گیت بسیار دشوار است و نمیتوان آن را یاد گرفته و استفاده کرد و تنها برنامه نویسان یا طراحان حرفهای از آن میتوانند استفاده کنند اما اینگونه نیست . گیت شامل چندین دستور است که تعداد آنها نیز زیاد نیست ( دستورات کاربردی شامل 20 دستور اصلی هستند ) و میتوان با چندساعت صرف زمان ، بخوبی گیت را یادگرفته و از آن استفاده کرد . همچنین اگر در حین پروژه کد یا دستوری را فراموش کنید میتوانید از طریق قسمت help ، لیست کامل دستورات را مشاهده کنید . این بخش در گیت به شکل زیر نوشته می شود
git - -help
با اجرای این دستور در خط فرمان و اجرای آن ، لیست دستورات را مشاهده خواهید کرد . برای اینکه با گیت کار کنید همانطور که گفته شد باید ابتدا نرم افزار آن را برای خودتان دانلود کنید . دانلود این نرم افزار از سایت خود گیت به آدرس ( git-scm.com ) ممکن است و باید متناسب با نوع و نسخه سیستم عامل خودتان این نرم افزار را دانلود کنید . پس از دانلود ، نصب آن بسیار ساده است و نیاز به انجام تنظیمات خاصی در پروسه نصب نیست و با همان تنظیمات پیشفرض هنگام نصب نیز میتوانید بخوبی از تمامی امکانات گیت استفاده کنید .
پس از اینکه نرم افزار گیت را نصب نمودید میتوانید برای راحتی کار از نرم افزار GitBash استفاده کنید . GitBash را کافیست باز کنید و مسیر پروژه خودتان را در آن مشخص کنید اما اینکار ممکن است کمی سخت باشد . برای راحتی کار میتوانید ابتدا در سیستم عامل خودتان به مسیر پروژه مدنظر رفته و روی فولدر اصلی پروژه راست کلیک کرده و گزینه GitBash here را انتخاب کنید تا نرم افزار GitBash ، در مسیر پروژه شما اجرا شده و بتوانید از دستورات گیت در داخل این پروژه استفاده کنید .
زمانی که وارد دایرکتوری خودتان شدید ، میتوانید با دستور زیر بررسی کنید که آیا گیت به درستی نصب شده است یا نه ؟
git - -version
پس از وارد کردن این دستور باید نسخه گیت که به شما نمایش داده میشود ، با نسخه نمایش داده شده در سایت گیت یکسان باشد . پس از این باید یک ریپازیتوری ( Repository ) ایجاد کنید .
ریپازیتوری چیست ؟
اگر بخواهیم در یک خط و به ساده ترین زبان مفهوم ریپازیتوری را خدمتتان توضیح دهیم میتوان اینگونه گفت که :
برای اینکه پروزه خود را به گیت متصل کنیم ، باید توسط خد فرمان و در مسیر پروژه دستور زیر را اجرا کنیم :
git init
بعد از اجرای این دستور ، یک فولدر یا نام git. در دایرکتوری پروژه شما ایجاد خواهد شد که البته این فولدر از نوع مخفی است و اگر قادر به مشاهده آن نیستید ، درصورتی که از سیستم عامل ویندوز استفاده میکنید باید از مسیر control panel و قسمت folder option امکان نمایش فایل های hidden را میسر کنید . در این حالت مطمئنا دایرکتوری git. را مشاهده خواهید نمود .
اکنون پروژه شما به یک Repository تبدیل شده است و میتوانید از دستورات مختلف گیت در داخل پروژه استفده کنید .
حالت های مختلف در گیت
زمانی که شما برای اولین بار پروژه خودتان را در گیت قرار میدهید میتوانید به کمک دستور status ، از وضعیت اولیه پروژه خودتان اطلاع داشته باشید ( در هرلحظه از حین کار میتوان با این دستور وضعیت فایل ها یا فولدر هارا مشاهده کرد ) برای اینکار کافیست تا دستور زیر را در خط فرمان وارد کنید :
git status
در این حالت مطمئنا خواهید دید که دستوراتی قرمز رنگ با نوشته هایی مثل modified نمایش داده شده است . در این شرایط معنی این است که فایل هایی در داخل پروژه شما هستند که هنوز وارد حالت استیج نشده است . stage حالتی است که کدهای شما پس از هربار تغییر ، موقتا داخل آن قرار خواهند گرفت تا آماده تهیه نسخه پشتیبان شوند که به این حالت ( تهیه نسخه پشتیبان ) commit گفته میشود . زمانی که قصد داشته باشیم تا یک نسخه از پروژه را تهیه کنیم اصطلاحا باید commit کنیم .
در اولین گام استفاده از گیت برای ذخیره فایل ها در حالت stage لازم است تا از دستور زیر استفاده کنیم
git add .
در این حالت فایل هایی که دچار تغییر شده است و هنوز به مرحله stage نرفته است ، همگی به داخل استیج خواهند رفت و آماده هستند تا کامیت شوند . ممکن است بازهم روی پروژه کار کنیم و فایل ها را تغییر دهیم در این حالت مجدد باید از دستور git add استفاده کنیم تا دوباره فایل های تغییر یافته را داخل استیج ببریم . در هر صورت تمامی فایل های تغییر یافته باید داخل استیج بروند .
پس از اینکه کار روی پروژه انجام شد و همه آنها را به داخل استیج فرستادیم ، اگر قصد تهیه یک نسخه تا این مرحله از پروژه را داشته باشیم لازم است تا از دستور زیر استفاده کنیم
git commit -m"the first commit in project"
هنگام کامیت کردن باید یک پیغام ( از طریق عبارت m ) بعنوان شناسه که بعدها برای راحتی خودمان است وارد کنیم . هربار که از دستور کامیت استفاده کنیم ، یک نسخه از پروژه تهیه می شود که سپس میتوان با دستوراتی همچون دستور git log لیست کامیت ها را بررسی نموده و با دستور git checkout به یکی از کامیت ها سوئیچ کرده و به نسخه خاصی از پروژه که گرفته بودیم بازگشته و آن را مشاهده کنیم ، از آن قسمت کدنویسی را ادامه دهیم یا دوباره به آخرین حالت پروژه برگردیم .
اصلی ترین دستورات در گیت به شکل زیر هستند :
git - -version
git - -help
git init
git config
git add
git commit -m
git commit -a -m
git status
git reset
git checkout
git switch
git push
git pop
git log
git stash
git branch
git merge
git ignore
اما برای کار گروهی روی پروژه ها چگونه میتوان از گیت استفاده کرد ؟
کارهای تیمی و گیت
برای کارهای گروهی نیز در گیت دستورات خاصی درنظر گرفته شده است که میتوان به سادگی یک پروژه را بین چندین نفر تقسیم نموده و سپس آن را تجمیع کرده و پروژه کلی را ایجاد کرد . به هر عضوی که بروی قسمتی از پروژه کار کند یک شاخه یا اصطلاحا یک Branch گفته می شود .
اگر آگهی های استخدامی برای برنامه نویسی یا طراحی سایت را مشاهده کرده باشید اکثرا تسلط به گیت یکی از الزامات است . این تسلط صرفا برای خود شما نیست . بلگه برای کار گروهی روی پروژه ها و تعامل با سایر اعضای تیم نیز به کار گرفته خواهد شد .
زمانی که مدیر پروژه قصد دارد تا بخش های مختلف پروژه را نقسیم کند ، شما بعنوان یک شاخه در ریپازیتوری ، باید بخوبی وظایف خود را دانسته و در موارد لزوم ، پروژه خود را روی مخزن اصلی در دسترس قرار دهید .
برای کارهای گروهی باید از سرویس گیت هاب ( Github ) استفاده کنید که در یک مقاله مفصل تر در مورد گیت هاب نیز صحیت خواهیم کرد . پس میتوان اینگونه جمع بندی کرد که یادگیری گیت بسیار آسان است و شما بعنوان یک شخص فعال در حوزه برنامه نویسی ملزم به یادگیری کار با گیت هستید و این یادگیری چند ساعت بیشتر طول نخواهد کشید . جهت آموزش کامل git و همچنین سرویس github میتوانید از دوره جامع گیت و گیت هاب به زبان ساده که در ابتدای مطلب معرفی شده است استفاده کنید .
امید قدیمی هستم ، 8 سال است که در زمینه طراحی و برنامه نویسی وب سایت فعالیت می کنم . توسعه دهنده فرانت اند ، طراح و برنامه نویس انواع وب سایت های وردپرسی ، فعال در زمینه تولید محتوا و سئو وب سایت
نقشه راه فرانت
اگر قصد دارید تا یک طراح ماهر باشید ، ما درست ترین مسیر را برای شما فراهم کردیم و فقط کافیست همراه ما باشید
در این مقاله ماهیت فریمورک Symfony را بررسی کرده و ویژگی های آن را به شکل کامل بیان خواهیم کرد . چرا میتوانید سیمفونی را بعنوان یک فریمورک مناسب برای زبان php بپذیرید ؟
در دنیای برنامه نویسی زبان های سطح بالا ، دونوع زبان مفسری و کامپایلری داریم . در این مقاله ویژگی هرکدام از این زبان ها و تفاوت و کارایی هریک را به شکل دقیق بررسی خواهیم کرد .