گیت هاب به چه دردی می خورد ؟‌

اول اینکه کدهاتون رو از روی سیستمتون به فضای اینترنت منتقل می کنه و نگرانی از دست دادنش رو نخواهید داشت.

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

سوم اینکه وقتی چند مورد تغییرات روی یه کدی بدید و هر دفعه از git push استفاده کنید بعدا می تونید سایت GitHub ببینید که هر دفعه چه چیزی رو تغییر دادید و یا حتی کدهای قبلیتون رو برگدونید.

چهارم اینکه اگه شما بخواید مردم می تونن کدهاتون رو ببینند و روش نظر بدن. حتی تغییرات مد نظرشون رو روی کدهاتون اعمال کنند و بعد اگه شما تایید کردید روی کدها ثبت بشه.

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

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

 

 

دستورات مفید در ترمینال گیت‌هاب (Git Bash)

چطور از گیت استفاده کنیم ؟

گیت و گیت هاب خیلی ساده هستند ولی چون از محیط ترمینال (CMD در ویندوز) برای انجام کارهاشون استفاده می کنند به نظر پیچیده میان. اصلا لازم نیست ازش بترسید. فقط چندتا دستوره که احتمالا برای کلاس کار به جای اینکه به راست کلیک اضافه کنن، گفتن بذارید توی ترمینال وارد کنیم تا حس خفن بودن بهمون دست بده !

 

استفاده از گیت‌هاب با استفاده از Github Desktop، سریع، آسان و بدون حتی یک خط کد :


1- وارد گیت هاب بشید و یک اکانت درست کنید.

2- وارد اکانت خودتون بشید و یک مخزن جدید درست کنید. (ریپوزیتوری)

3- نرم افزار Github desktop رو نصب کنید. (نرم افزار Git رو هم نصب کنید)

4- بعد از ایجاد پروژه وارد صفحه پروژه بشید و از کلید code سبز رنگ گوشه سمت راست گزینه open in github desktop رو انتخاب کنید.

5- با باز شدن نرم افزار گیت هاب، از شما آدرس یک پوشه روی سیستم خواسته میشود، پوشه را معرفی کنید. محل قرارگیری فایلها از این به بعد اینجاست و این پوشه با مخزن پروژه شما در گیت هاب سینک خواهد شد.

6- بعد از هر بار انجام تغییرات در پروژه روی دسکتاب، وارد گیت هاب دسکتاپ شوید و کلید commit to main و سپس fetch origin را بزنید تا تغییرات در سرور هم ذخیره شود.

7- تمام بدون حتی یک خط ترمینال :)

 

برای استفاده از گیت هاب باید چندتا مرحله ساده رو طی کنیم  (قدیمی):

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

  • توی اینترنت :
  1. نصب نسخه مناسب برای سیستم عامل از سایت گیت هاب (من نسخه ویندوز 64 بیتی رو نصب کردم)
  2. ساخت یه اکانت توی سایت گیت هاب
  3. ساخت یه ریپوزیتوری به نام پروژه امون در سایت گیت هاب

وقتی وارد اکانتتون توی گیت هاب میشید سمت راست بالا یه + هست. روش کلیک کنید نوشته Create New Repository روی اینم کلیک کنید فقط یه اسم به پروژه اتون می دید و خلاص. البته کارهای اضافه تری هم میشه کرد که بعضیاش خیلی مفیدن. مثلا می تونید بگید این یه پروژه است که با Laravel نوشته شده و لازم نیست فایلهای خود لاراول رو هر دفعه برام آپلود کنی، فقط فایلهایی که من تغییر میدم یا فایلهایی که اضافه می کنم رو بریز روی گیت هابم. به این کار می گن Git Ignor یعنی از این چیزایی که من میگم چشم پوشی کن.

  • توی سیستم خودتون :
  1. ساخت یه فولدر خالی با اسم دلخواه توی سیستم و راست کلیک روی اون و انتخاب گزینه Git Bash Here ( این گزینه وقتی نرم افزار گیت هاب رو روی سیستمون نصب کنید باید به منوی راست کلیک اضافه بشه.)
  2. معرفی خودتون و ریپوزتوری که در سایت گیت هاب درست کردید برای پروژه اتون با دستور زیر :
    git init
    git remote add esme-repository https://github.com/...(addresse repository dar git hub be sorate kamel)
  3. سینک کردن (همسان سازی) اطلاعاتی که توی ریپوزیتوری (از الان به بعد بهش می گیم مخزن) توی گیت هاب دارید با فولدری که ساختید توی سیستم با دستور زیر :
    git pull esme-repository master --rebase

  4. حالا باید محتویات فولدری که روش کار می کردید رو توی این فولدر کپی کنید. حواستون باشه که فایلهایی که مشترک هستند رو به هیچ عنوان کپی نکنید.

  5. الان گیت هاب هنوز فایلهایی که تغییر کردند رو به رسمیت نمی شناسه. اول باید یه توصیح به گیت هاب بدید که چیکار کردید تا قبول کنه ازتون. برای این کار باز توی همون ترمینالی که داشتیم دستورات قبلی رو میزدیم دستور زیر رو می نویسیم :
    git commit -a -m "tozihi ke mikhaim. masalan  First Upload"

  6. حالا با یه دستور دیگه کدهامون رو به سرورگیت هاب منتقل می کنیم :
    git push esme-repository esme-malek-repository

  7. فعلا تا اینجا کدهامون بین سیستم و سایت گیت هاب همسان (سینک) شد.

 

اصطلاحات گیت هابی :

ریپوزتوری (Repository) : به فارسی میشه مخزن. در واقع میشه یه فولدر حسابش کرد که برای هر پروژه به صورت مجزا درست می کنیم و فایلهای هر پروژه به صورت مجزا در اون ریخته میشه. مخزن. فولدر. شاخه !

اوریجین (Origin) : اسم پروژه یا اسم همون مخزنتون.

پوول (Pull) : دریافت کردن کدهاتون از گیت هاب یا همون انتقال کدها از سایت گیت هاب به رایانه شما میشه Pull کردن.

پووش (Push) : انتقال فایلها از رایانه شما به سایت گیت هاب میشه پوش کردن.

کامیت (Commit) : شما بخونید "کامنت". در واقع توضیحیه که همراه هر بار تغییرات روی فایلهاتون می دید. می تونه شماره ورژن باشه، یا هر متنی که شما بخواید. بعدا که کدها رو مرور می کنید مثلا بهتون یادآوری می کنه که چرا این تغییرات رو دادید.

فورک (Fork) : اگه یه پروژه ای روی سایت گیت هاب نظرتون رو جلب کرد و خواستید روش کار کنید فقط کافیه از اون یه کپی توی اکانت خودتون بگیرید. به این کار میگن فورک کردن. یکی از مزیت های این کار اینه که نویسنده اصلی کار هم می تونه پروژه شما رو پیگیری کنه یا اگه تغییر خوبی دادید می تونید به اسم خودتون و با تایید نویسنده اصلی پروژه به پروژه اصلی اعمال کنید.

کلون (Clone) : کلون یه کپی از پروژه رو براتون دانلود می کنه.

برنچ (branch) : تعداد کپی های تغییرکرده از پروژه شما.

 

دستورات مفید GIT

بازگشت به نسخه‌ی دلخواه

git log یا git status


می توانیم لیست تمامی کامیت ها را ببینیم.حالا می توانیم یکی از sha کامیت ها رو کپی کرده و با دستور زیر از آن استفاده کنیم


git reset --hard commit_sha

git push -f origin main

 

البته این نوع بازگشت، بازگشت بدون قابلیت لغو است. در واقع با این نوع بازگشت به نسخه قبلی، تغییراتی که داده بودید و الان حذف شده اند دیگر قابل بازیابی نیستند.