آموزش سریع و ساده گیت – مقدمات و کار با گیت‌هاب

مهم نیست که اسم گیت به گوشتون خورده باشه یا نه، مهم اینه که برای خفن شدن به گیت نیاز دارید. هدف‌مون از این مطلب چند قسمتی آموزش گیته. می‌خوام خیلی سریع و ساده به شما بگم که گیت چیه و چطوری ازش استفاده کنیم. همچنین آپلود یه پروژه روی گیت‌هاب رو داریم که خودش موضوع مهم دیگه‌ایه!

تعریف

گیت یه مجموعه دستور و امکاناته که روند تغییرات یک یا چند فایل رو مشاهده می‌کنه و به ما این قابلیت رو میده تا بتونیم نسخه‌های مختلفی از برنامه‌ای که توسعه می‌دیم رو مدیریت کنیم. اینجوری ما می‌تونیم بین نسخه‌های مختلف یه برنامه بگردیم و اونا رو restore بکنیم. این پروسه به صورت خیلی مقدماتی و پایه‌ای بهش میگن سیستم کنترل نسخه یا Version Control System. گیت رو خالق لینوکس، لینوس توروالدز نوشته 🙂

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

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

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

۱- نصب گیت

اولین کاری که باید بکنیم اینه که گیت رو روی کامپیوترمون نصب بکنیم:

  • اگه مثل من از اوبونتو استفاده می‌کنید که کافیه توی ترمینال بزنید sudo apt install git
  • اگه از مک او اس استفاده می‌کنید کافیه توی ترمینال بزنید brew install git
  • اگر هم توی ویندوز هستید که باید این برنامه‌ رو نصب بکنید.

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

۲- کانفیگ گیت

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

شما بجای Arastoo و hi@arastoo.net، از نام و ایمیل خودتون استفاده کنید. 

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

۳- ایجاد یک مخزن

همونطوری که قبلا اشاره کردم برای اینکه گیت بتونه اطلاعات مربوط به یه پروژه رو دنبال کنه از مفهوم مخزن استفاده میکنه. پس نیاز هست که یه مخزن درست کنیم. برای این کار ترمینال خودتون رو باز کنید و با دستور cd به دایرکتوری پروژه خودتون مراجعه بکنید. بعد از اون دستور زیر رو وارد کنید:

بعد از اینکار پیغامی شبیه به زیر براتون ظاهر میشه:

حالا اگه یه دستوری مثل ls -a رو وارد کنید می‌بینید که یه دایرکتوری مخفی به اسم .git وجود داره که گیت اون رو براتون ساخته. از این به بعد تمام اطلاعات مربوط به پروژه‌تون مثل کامیت‌ها و… توی این دایرکتوری نگه داری میشه. در مورد این قضیه هم صحبت می‌کنیم.

توی اون دایرکتوری یه فایل simple.txt درست کنید. 

۴- بررسی وضعیت گیت

گیت یه دستور git status داره که وضعیت گیت رو بررسی می‌کنه. مثلا میگه چه چیزهایی تغییر کردند، چه چیزهای جدیدی اضافه شده، آیا همه چیز بروزرسانی شده یا نه و چیزهایی از این دست. حالا بیایید یه بار این دستور رو وارد کنیم بببینم چی به ما برمی‌گردونه:

خروجی:

این خروجی داره به من میگه که روی برنچ مستر هستم (در موردش حرف میزنیم)

هنوز کامیتی ایجاد نشده (در مورد اینم حرف میزنیم)

مهم این خطه که نوشته untracked files: در واقع این خط داره میگه که یه سری فایل توی دایرکتوری test شما وجود داره که گیت دنبال‌شون نمیکنه، به تعبیری این فایل simple.txt جدیده و گیت هنوز نمیدونه که باهاش چیکار بکنه.

حالا سوالی که پیش میاد اینه که چطوری به گیت بگم که هواسش به این فایله باشه؟

۵- استیج کردن – به روی صحنه بردن

گیت یه مقوله به اسم «ناحیه استیج» داره. در واقع مثل یه اتاق خالی نگاهش بکنید که توش یه دوربین مداربسته وجود داره «اسم دوربین‌مون گیت هستش» حالا شما برای اینکه تمام رفتارهای یک آدم رو بفهمید و ببینید داره چیکار میکنه باید وارد اون اتاق‌ش بکنید. این آدم توی مثال‌مون فایل simple.txt هستش. با وارد کردنش به این چهارچوب، گیت دنبال‌ش میکنه و بیخیالش نمیشه و تمام جیک و پیکش رو براتون در میاره. 

برای وارد کردن فایل simple.txt به این محیط کافیه دستور git add رو همراه با اسم فایل وارد کنید، مثل:

حالا فایل به مرحله استیج رفت. اگه چند تا فایل داشته باشید می‌تونید بجای وارد کردن اسم همشون دستور git add -A رو وارد کنید. به همین سادگی.

حالا یه بار دیگه دستور git status رو وارد کنید:

این بار بجای untracked files داره میگه که یه فایل جدید به اسم simple.txt داره ردگیری میشه و آماده‌س که کامیت‌ش بکنیم.

۶- کامیت کردن

مثال دوربین مداربسته رو به یاد بیارید. شما یه آدم رو توی اون چهار دیواری که گفتیم اسمش استیج هستش قرار میدید. حالا می‌گید که مثلا ساعت ۶ یه ویدیو کلی از تمام فعالیت‌هاش تا الان رو بفرست به یه جای امن. کامیت کردن یه پروژه هم تقریبا همین حالت رو داره. شما پروژه‌تون رو تا نیمه راه آوردید حالا می‌خواید تا اینجای کار یه نسخه امن و درست از اون رو داشته باشید تا اگه بعدا دچار مشکلی شدیم بتونیم برگردیم سراغ اون نسخه درست. 

برای کامیت کردن نیاز هست که یه فایل یا چندین فایل رو توی استیج قرار داده باشید. همونطور که می‌دونید ما یه فایل simple.txt رو توی قسمت استیج قرار دادیم بنابراین حالا می‌تونیم اون رو کامیت بکنید. برای اینکار دستور git commit رو به صورت زیر استفاده می‌کنیم:

آرگومان -m به این معناست که همراه با کامیت یه پیغام رو هم بزار که ببینم کامیت من راجع به چیه. مثلا توی کد بالا پیغام رو گذاشتم: کامیت اولیه یا Initial Commit.

۷. گیت‌هاب

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

۷-۱: ثبت نام و ساخت مخزن در گیت‌هاب

اولین کاری که باید بکنید اینه که توی گیت‌هاب ثبت نام بکنید و بعدش یه مخزن درست کنید. برای اینکار کافیه وارد این آدرس بشید و فیلدهای مربوط به مخزن رو پر کنید و در نهایت Create repository رو بزنید. بعد از اینکار وارد آدرس مخزن‌تون بشید. مثلا مخزن من توی این آدرس هستش.

۷-۲: ارتباط با گیت‌هاب

حالا نیازه که آدرس .git مخزن‌تون رو بردارید و توی ترمینال براساس کد زیر به مخزن متصل بشید: 

origin یک نام برای این ارتباط ریموت من با گیت هستش. می‌تونه هر چیز دیگه‌ای باشه اما اینو معمولا میزارند.

حالا که من یه ارتباط درست کردم و الان وقت این شده که گیت لوکال‌م رو بفرستم روی گیت‌هاب. برای اینکار از دستور push به صورت زیر استفاده می‌کنم.

گفتم که برنچ مستر رو به صورت لوکال بفرست روی ارتباط ریموتی که با نام origin ساختم. با اجرای این دستور از شما مشخصات احرازهویت گیت‌هاب رو میپرسه که باید اونا رو به درستی وارد کنید.

اگه با مشکلی برخوردید می‌تونید از آرگومان -f یعنی force برای push کردن استفاده کنید که به صورت زیر این کار انجام شدنیه:

۷-۳: کلون کردن پروژه

برای دریافت محتویات داخل یک ریپازیتوری توی گیت‌هاب کافیه از دستور clone استفاده کنید:

حالا اگه من توی این مخزن گیت یه بروزرسانی ایجاد کردم. مثلا یه فایل جدیدی رو اضافه کردم، دیگه نمی‌خواد از اول بیایید کل پروژه رو کلون بکنید. می‌تونید با استفاده از دستور pull فایل‌های جدید آپدیت شده رو بیارید تو مخزن محلی‌تون:

در مطلب بعدی از این سری دو قسمتی می‌خوام یه ذره راجع به نکات پیشرفته‌تر صحبت بکنم و چیزهای عجیب و غریب‌تری رو بگم 😅🤓😉

منتشرشده توسط

ارسطو عباسی

یه نویسنده، وبلاگ‌نویس و توسعه‌دهنده خودآموخته‌ام. کسی که به هنر، برنامه‌نویسی، علوم، فلسفه، ریاضیات، ادبیات و مسافرت خیلی علاقه داره و هر روز سعی می‌کنه که چیزهای جدیدی رو یاد بگیره.

3 دیدگاه در “آموزش سریع و ساده گیت – مقدمات و کار با گیت‌هاب”

  1. سلام و خسته نباشید.
    من عضو گیت هاب شدم ولی قسمت global setup رو نمیتونم تنظیم کنم. میشه راهنمایی کنین؟

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

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