(function (s, e, n, d, er) { s['Sender'] = er; s[er] = s[er] || function () { (s[er].q = s[er].q || []).push(arguments) }, s[er].l = 1 * new Date(); var a = e.createElement(n), m = e.getElementsByTagName(n)[0]; a.async = 1; a.src = d; m.parentNode.insertBefore(a, m) })(window, document, 'script', 'https://cdn.sender.net/accounts_resources/universal.js', 'sender'); sender('986212f6399684')
Git یا گیت چیست؟

  این مقاله را میتوانید در مدت زمان 6 دقیقه مطالعه کنید   منتشر شده در تاریخ: مهر ۱۶ام, ۱۴۰۰   آخرین بروزرسانی: آذر ۱۸ام, ۱۴۰۱


برهیچ کسی پوشیده نیست که دهه اول قرن ۲۱ جز یکی از مهم ترین نقاط عطف تاریخ در حوزه تکولوژی و ارتباطات بوده است. گسترش اینترنت، قدرت نمایی قول های تولید تلفن هوشمند، معرفی آیفون، ظهور فیسبوک، پیشتازی گوگل و مایکروسافت، خلق بیت کوین و… شاید از مهم ترین اتفاقاتی بود که در این دهه ما شاهد آن بودیم.
دنیای برنامه نویسی نیز در این سال ها با اتفاقات جالب و البته تاثیر گذاری روبرو بود. درست در سال ۲۰۰۵ بود که کارکنان لینوکس هنگام کار بر روی پروژه لینوکس کرنل و درست زمانی که از سیستم کنترل منابع bitkeeper که برای نگهداری و مدیریت کدهای پروژه استفاده می شد، موفق به خلق گیت شدند.
در آن سال ها، لینوکس توروالدز به دنبال سیستمی بود تا بتواند با استفاده از آن مثل بیت کیپر مدیریت پروژه را تماما در دست داشته باشد و یک سال بعد درست در ۱۶ ژوئن سال ۲۰۰۶ توانست با استفاده از گیت مدیریت ریلیز 2.6.12 کرنل را بر عهده بگیرد.
گیت در زبان انگلیسی واژه ای مهجور است و به معنای فردی است که زاده شده برای اذیت و آزار دیگران. ناخوشایند و نچسب! اما همین مخلوق ناخوشایند  توانست در زمان بسیار کوتاهی به یکی از ضروری ترین ابزارهای مورد نیاز توسعه دهندگان و برنامه نویسان تبدیل شد.

 

گیت (Git) چیست؟

اگر شما قصد کار بر روی یک پروژه را دارید ممکن است بخواهید تغییرات انجام شده توسط سایر توسعه دهندگان را رصد کنید، اشکالات و ویژگی ها را تک به تک ببینید و به صورت کلی پروژه را مدیریت کنید.
گیت یک سیستم کنترل (version control system) است که توسعه دهندگان، در سراسر دنیا می توانند از آن استفاده کنند و با دیگر توسعه دهندگان همکاری کنند.
گرچه گیت می تواند به خودی خود موضوعی پیچیده به نظر برسد اما من سعی دارم در این مقاله به ساده ترین شکل، مفاهیم اصلی و بنیادی Git را به شما معرفی کنم تا بتوانید تا حد ممکن از آن در مسیر یادگیری برنامه نویسی استفاده کنید.
سیستم‌های کنترل نسخه، تغییرات و بازنگری‌های توسعه‌دهندگان را در یک مخزن مرکزی ذخیره می‌کنند.
با این کار همکاری بین توسعه‌دهندگان آسان می‌شود؛ به این شکل که هر توسعه‌دهنده می‌تواند نسخه‌ی جدید را دانلود کند، تغییرات را در آن اعمال و سپس آپلود کند. از طرفی کلیه‌ی توسعه‌دهندگان قادر به مشاهده‌ی تغییرات جدید، دانلود آن‌ها و مشارکت در پروژه خواهند بود.

گیت چیست

 

 

اهمیت یادگیری گیت

گیت به شما کمک می کند تا در پیشبرد یک پروژه کمتر دچار سردرگمی شوید و بتوانید بعد از اتمام آن نیز به خوبی آن را مدیریت کنید. تفاوت عمده گیت با سایر VCSها در این است که طرز تفکر گیت و تجربه کاربری آن کاملا با سایر سیستم ها مثل subversion، CVS یا performance متفاوت است گرچه ممکن است از لحاظ رابط کاربری شباهت هایی بین آن ها باشد.

 

کاربرد‌های گیت Git

  • امکان ایجاد تغییرات و ارائه شرح تغییرات در یک فهرست
  • به‌روزرسانی در مخزن محلی و ادغام از راه دور آن با یک شاخه دیگر
  • مناسب برای پروژه‌هایی که بیش از یک نفر روی آن کار می‌کند و ایجاد تعامل میان اعضا در پروژه‌های گروهی
  • امکان اضافه کردن برچسب‌ها به هر نسخه نرم‌افرار
  • ارائه تاریخچه و امکان مطالعه و بررسی سوابق تاریخی مخزن
  • امکان جایگزین کردن تغییرات و بازیابی کدهای قبلی در صورت بروز مشکل در مخزن

 

مخازن (ریپازیتوری) گیت 

سیستم کنترلی گیت، از طریق وب اپلیکیشن هایی نظیر github و gitlab به صورت کاملا رایگان در اختیار توسعه دهندگان قرار گرفته است. مزیت این سیستم ها در این است که شما وقتی سورس کدهای خود را در آن ها قرار می دهید دیگر هیچ نگرانی در مورد از بین رفتن منبع کدهای خود نخواهید داشت.
همچنین شما در این وبسایت ها قادر خواهید بود تا پروژه ها و سطوح دسترسی مختلف تعریف کنید و کپی های متعددی از پروژه ها نگهداری کنید.
و اما مهم ترین ریپازیتوری های گیت:

  • گیت‌هاب (GitHub): در سال 2008 راه‌اندازی شده و اخیراً از سوی مایکروسافت خریداری شده است. در پاییز 1397 حدود 31 میلیون کاربر داشته است.
  • گیت‌لب (GitLab): در سال 2011 راه‌اندازی شده و تحت مالکیت شرکت GitLab است.
  • بیت‌باکت (BitBucket): در ژوئن 2008 راه‌اندازی شده است و تحت مالکیت شرکت نرم‌افزاری Atlassian قرار دارد.

 

گیت هاب و گیت لب

 

 

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

 

برای راهنمایی گرفتن دربارهٔ یک دستور:
git help 

برای اجرای تنظیم‌ها از config استفاده می‌شود. جزئیات استفاده از این دستور را می‌توان با دستور زیر بدست آورد.

git help config

دستور ایجاد پوشه اصلی:

<آدرس پوشه اصلی> git init

دستور استفاده از یک گیت از قبل ساخته شده:

git clone ssh://<user> @ <host> /path/to/repo.git

استفاده می‌شود. دستور اضافه کردن فایل جدید:

<نام فایل> git add 

دستور حذف فایل

<نام فایل> git rm --cached 

دستور مشاهده وضعیت:

git status

بررسی تفاوت‌ها در کد نوشته شده و اعمال نشده:

git diff

 دستور اطلاع از تاریخچه

git log

دستور قراردادن تغییرها:

git push

دستور اعمال تغییرها:

git commit

دستور دریافت تغییرها از روی تاریخچه:

git pull

دستور الحاق برچسب:

git tag

دستور بازگرداندن یک فایل به آخرین وضعیت ذخیره شده:

<نام فایل> git checkout HEAD 

برای برگرداندن تغییرهای یک دستور خاص:

<git revert <commit-id

اصلاح یک دستور:

git commit -amend

 

نصب گیت

برای بررسی اینکه آیا گیت را بر روی رایانه خود نصب کرده اید یا خیر کافی است در ترمینال خود دستور زیر را تایپ کنید:

git --version

 

اگر گیت قبلا نصب شده باشد نسخه آن به شما معرفی می شود. در غیر این صورت کافی است وارد وبسایت Git شوید شوید و به آسانی با توجه به سیستم عامل خود، نسخه مورد نظر را رسم کنید.

 

شروع کار با گیت

برای شروع کار با گیت به ترمینال خود (your terminal) بروید و دستور زیر را در پروژه‌ای که می‌خواهید ایجاد کنید وارد کنید. این دستور دایرکتوری (directory) پروژه را آغاز می‌کند:

<span style="font-size: 16px;">git init</span>

دستور زیر را برای اضافه کردن پرونده برای ردیابی Git اجرا کنید. با این کار این پرونده‌ها به قسمت مرحله (staging) اضافه می‌شوند:

<span style="font-size: 16px;">git add <filename_one></span>

دستور زیر را اجرا کنید و چگونگی تغییرات خود را در این پرونده‌ها انجام دهید:

<span style="font-size: 16px;">git commit -m "<add a commit message here>"</span>

هنگامی که این کد را اجرا کردیم می‌توانیم تغییرات مد نظر خود را اعمال کنیم مانند:

<span style="font-size: 16px;">git push</span>

اجرا این کد باعث می‌شود تا کد اصلی از شاخه the master branch in the local به the master branch از راه دور سوق داده شود. از git pull برای کشیدن آخرین تغییرات از مخزن از راه دور به مخزن محلی استفاده می‌شود. کد (repository code) از راه دور توسط توسعه‌دهندگان مختلف به طور مداوم به روز می‌شود:

<span style="font-size: 16px;">git pull origin master</span>

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

<span style="font-size: 16px;">git clone [repository url]</span>

 

تمام!
حال شما می‌توانید گیت را در رایانه خود اجرا کنید و سیستم‌های امنیتی خود را توسعه دهید. ایجاد هرگونه تغییر بیشتر در شاخه اصلی گیت مستلزم انجام مجدد تمام این دستورالعمل‌ها است پس کاملا با دقت تمام این کد‌ها را وارد کنید تا نیاز به اجرای مجدد کدها نداشته باشید.

 

جمع بندی

یکی از مهم ترین موضوعاتی که در بحث آموزش طراحی وبسایت باید به آن پرداخته شود، آشنایی با گیت، گیت هاب و گیت لب است.

هر برنامه نویس و توسعه دهنده وبسایت میبایست در این بخش با پیکربندی گیت، لایف سایکل ها، ایجاد و مدیریت انشعاب ها در گیت، رفع تداخل ها، تگ گذاری، انبار کردن کدها و … به طور کامل آشنا شود و بتواند پروژه خود را در این سیستم به خوبی مدیریت کند. یادگیری گیت به عنوان یک مکمل بسیار مهم، برای تمامی برنامه نویسان و توسعه دهندگان یک موضوع اساسی است.
امیدوارم این مقاله به عنوان مقدمه ای جهت آشنایی شما با گیت مفید فایده بوده باشد.

 

آیا این مطلب برای شما مفید بود؟

امتیازشو ثبت کنید

میانگین / 5. تعداد رای

اولین نفر شما امتیاز دهید

دوره غیرحضوری طراحی و برنامه نویسی وبسایت

آموزش طراحی وبسایت به شیوه تخصصی و کاربردی با وردپرس

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

شاید به این مطالب نیز علاقه مند باشید.

بهترین و محبوب ترین فریم ورک فرانت اند در سال ۲۰۲۲

مهم‌ترین و محبوب‌ترین فریم ورک فرانت اند در سال ۲۰۲۲ کدام است؟

بهترین و معروف‌ترین فریم ورک‌های طراحی و توسعه فرانت اند سایت در سال ۲۰۲۲ کدام فریم ورک‌ها هستند؟ چرا بعضی فریمورک‌های فرانت اند محبوب‌تر‌از بقیه‌اند؟ اگر قرار باشد طراح سایت…

وب 3 چیست

آشنایی با وب ۳، آینده اینترنت

وب ۳  (Web 3.0 ) در چند سال اخیر یکی از جالب ترین مفاهیم در حوزه فناوری بوده است. وب ۳، این پتانسیل را دارد که انقلاب عظیمی در نحوه…

فول استک دولوپر

نگاهی همه‌جانبه به موقعیت شغلی فول استک دولوپر

Full Stack Developer کیست؟ چه می‌کند؟ چه مهارت‌هایی دارد؟ بازارکار و درآمد توسعه‌دهنده فول استک در ایران و جهان  چطور است؟ چرا یک توسعه‌دهنده وب باید طراح و برنامه نویس…

0 0 رای
امتیازدهی به مقاله
دنبال کردن
با خبر کردن از
guest
0 دیدگاه
بازخورد داخلی
دیدن همه نظرات
تهران - نارمک، خیابان آیت، پلاک ۳۵۰، واحد۴

آیا این مطلب برای شما مفید بود؟

امتیازشو ثبت کنید

میانگین / 5. تعداد رای

اولین نفر شما امتیاز دهید

دوره غیرحضوری طراحی و برنامه نویسی وبسایت

آموزش طراحی وبسایت به شیوه تخصصی و کاربردی با وردپرس

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