آموزش گیت – قسمت دوم

0
306
آموزش گیت – قسمت دوم
GIT

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

 

بزن بریم

فک کنید شما یک پوشه‌ای بنام My_belec دارید که می‌خواهید این پوشه رو به گیت بشناسونید که براتون بررسی بکنه، وارد پوشه شده وراست کلیک کنید:

همان‌طور که می‌بینید دو گزینه با نام‌های git gui here و git bash here وجود داره که یکی حالت گرافیکی و دیگری حالت ترمینالی یا کامندی هسش که قطعاً ما حالت کامندی رو باهم اجرا می‌کنیم که یه کادری برامون مشابه عکس زیر بالا میاد:

سپس باید initialize بکنیم که با این کار ما اجازه میدیم گیت دایرکتوری رو تحت کنترل به گیره پس دستور زیر رو وارد کنید:

git init

که برامون پیغامی چاپ میکنه با این مضمون که داخل پوشه‌ها برات یه فایل .git ساختم. (مستندات سایت گیت)

git init

حواستون باشه که دایرکتوری که با دات (.) شروع بشه مخفی هست باید از حالت hidden خارج کنید (البته نیاز به این کار نیست کاری هم با اون پوشه تا آخر آموزش نخواهیم داشت)

خب حالا بیایید داخل پوشه هامون دوتا فایل دیگه با نام‌های src و inc بسازیم و یه داکیومنت.c و.h هم قرار بدیم (این کار صرفاً برای تست بوده لزومی نداره شما حتی میتونید فایل‌های word و غیره اضافه کنید و با من پیش بیایید)
ما به دلیل اینکه یه تغییرات جدیدی تو دایرکتوری دادیم باید به گیت بگیم برامون بررسی کنه، یه دستور بسیار پرکاربرد که همیشه ازش استفاده می‌کنیم:

git status

حتماً فهمیدید که تو گیت همه دستورات با پیشوند git شروع میشن.
بیایید این دستور رو وارد کنیم:

git status

 

تو خط اول میگه ما تو شاخه master هستیم. (آفرین بهت!)
خط بعدی میگه هنوز کامیتی نیست یا وجود نداره (خب هول نکنید، کامیت چیز خوشمزه‌ای به زودی بهش می‌رسیم)
تو خط بعد که یکی از اصطلاحات گیته و باید بلد باشید میگه فایل‌های untracked نشده این پایینی‌ها هستند.
گیت سه تا وضعیت داره که اولی untracked هست، به معنای اینکه اینارو تازه اضافه کردی و نمیدونم چیه..
بعد خودش اون وسطا راهنمایی میکنه، میگه دستور git add رو بزن تا اینا رو به منطقه یا وضعیت stage تغییر بدم که این دومین وضعیته به معنای اینکه حواسم هست بهش اما جایی ثبت نشده ولی بهت میگم که چه تغییراتی ایجاد کردی..
وضعیت سوم هم که کامیت کردنه باعث میشه تغییرات شما نهایی بشه و ثبت بشه. و اگر روزگاری خواستید به فایل هاتون برگردید دراصل به همین کامیت کرده هاتون برمیگردید. یه چند قدم که بیایید جلوتر براتون جا میفته.

من الآن دوس دارم فقط پوشه inc رو ببرم به وضعیت stage، خب دستور:

git add inc

بعد یه وضعیتم چک می‌کنم با دستور git status:

git status

 

خب مشخصه که فایل سبز رنگ در وضعیت stage قرار داره چون خودمون بهش گفتیم اما فایل src رو همچنان untrack میشناسه. نظرتون چیه داخل فایل main.h یه چند خط کد بنویسیم ببینیم گیت بهمون چی میگه؟

main.h

خب مجدد دستور git status رو بزنید:

git status

بیایید دوباره تفسیر کنیم. میگه یه فایل داری که تو حالت stage  هسش، بعد دو خط بعدی میگه حواست باشه یه چیزی تغییر دادی، میگم عه! گیت، میشه بهم بگی کجا تغییر پیدا کرده؟ میگه چشم! فقط لطف کن دستور git diff رو بزن تا بگم:

git diff
git diff

من که لذّت بردم، شما رو نمیدونم… دقیقاً میگه اینا رو اضافه کردی، که کاملاً درسته! حتی اگه شما تغییرات خیلی زیادی بدید که گیت نخواد همه تغییرات رو نشون بده، براتون شماره خط‌ها رو نشون می‌ده! میگه مثلاً تو خط فلان شما فاصله رو اضافه/حذف کردی… فقط یادتون نره که ما این تغییرات رو هم با دستور git add به stage اضافه می‌کنیم، چون مورد تاییدمونه. حالا میخوایم همینو کامیت کنیم. یعنی بگیم آره خانوم/آقای گیت دستت درد نکنه، همین تغییرات رو برام ثبت کن! (یادتون نرفته که شما هر زمان که بخواید میتونید در آینده به کامیت هاتون برگردید.)
دستور git commit رو وارد کنید!

git commit -m "Your Message"
git commit

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

git log
git log

 

خب تصویر گویاست الآن ما یک مورد کامیت شده داریم که برامون یه هش (hash) هم تولید کرده

صرفاً جهت اطلاع بگم الگوریم هش گیت، sha1 هسش.

حالا یه git status بگیرید:

git status

همچنان با فایل src ما کاری نداره … جهت تمرین شما خودتون هم این src رو اضافه کنید.

آموزش گیت جادی – قسمت دوم

 

 

 

 

منبع:سیسوگ

مطلب قبلیافزاینده ولتاژ پورت USB به 9 و 12 ولت – کاملا عملی همراه با شماتیک و pcb
مطلب بعدیدریافت ولتاژ های 5 و 9 و 12 ولت از فست شارژر – پروتکل QC2.0

پاسخ دهید

لطفا نظر خود را وارد کنید!
لطفا نام خود را در اینجا وارد کنید