Git و GitHub برای مبتدیان – مبانی
گیت گیت گیت… گیت تنها چیزی است که این روزها از مردم می شنویم. حالا، شما می خواهید بدانید آن چیست، بنابراین در جای درستی هستید 😉.
در این وبلاگ می آموزید که Git چیست، چرا باید از Git استفاده کنید و چگونه می توانید با استفاده از Git کد خود را به GitHub فشار دهید. و قسمت خوبش؟ برای این کار به هیچ دانش قبلی نیاز نخواهید داشت.
قبل از شروع، بیایید ببینیم …
مقدمه ای کوتاه
“Git یک است سیستم کنترل نسخه توزیع شده رایگان و منبع باز طراحی شده است تا همه چیز را از پروژه های کوچک گرفته تا پروژه های بسیار بزرگ را با سرعت و کارایی انجام دهد.” ~ لینوس ترووالدز
به عنوان مثال، شما در حال انجام یک بازی هستید که در آن نقاط بازرسی وجود دارد، بنابراین اگر در مراحل بعدی شکست خوردید، دوباره از نقطه بازرسی قبلی شروع کنید. این اساساً یکی از چیزهایی است که Git می تواند به شما کمک کند.
جدا از آن، ما میتوانیم شعبهها، همکاریها، بررسیها، نظرات، ردیابی و غیره داشته باشیم، نگران نباشید که این موارد را در بخش بعدی وبلاگها مشاهده خواهید کرد.
نصب Git
برای دانلود Git ✨ به این لینک مراجعه کنید
شروع کار با Git
خوب، این همه تئوری است، بیایید با دستوراتی که برای شروع به آن نیاز دارید شروع کنیم.
اکنون برای بررسی اینکه آیا دستگاه شما Git را نصب کرده است یا خیر، دستور زیر را اجرا کنید
git --version
اگر خروجی با تعدادی اعداد برای مثال دریافت می کنید. git version 2.41.0
(تعداد ممکن است یکسان نباشد)، پس همه شما آماده رفتن هستید 🥳.
اکنون Git را در دستگاه خود نصب کرده اید. اما، Git شما را نمی شناسد. بنابراین اکنون باید با اجرای دستورات زیر نام و ایمیل خود را به Git بگویید.
git config --global user.email "<your-email>"
git config --global user.name "<your-name>"
به عنوان مثال.:
git config --global user.email "example@gmail.com"
git config --global user.name "John Doe"
PS ترجیحاً شناسه ایمیل GitHub خود را قرار دهید
اکنون برای بررسی اینکه آیا جزئیات شما به درستی اضافه شده است یا خیر، آن را اجرا کنید، باید جزئیات وارد شده خود را به عنوان خروجی دریافت کنید.
git config --list
اگر خروجی خیلی بزرگ است با استفاده از آن به پایین حرکت کنید Arrow-down
در آنجا نام و ایمیل خود را پیدا کنید.
بسیار خوب، دستورات بالا فقط برای افرادی که به تازگی Git را نصب کرده اند مورد نیاز است و این فقط یک بار اجرا می شود.
اکنون، کمربندهای ایمنی خود را ببندید و بیایید با دستورات Git شروع کنیم 🚀
دستورات اولیه Git
- اول از همه، هر زمان که یک پروژه جدید را شروع می کنید، در آن پوشه باید یک مخزن محلی را مقداردهی اولیه کنید.
git init
باید پیامی دریافت کنید که می گوید مخزن git خالی اولیه شد. و همچنین باید یک فایل مخفی جدید به نام تشکیل شود .git
که git برای پیگیری آن پوشه استفاده می کند.
حال این سوال پیش می آید که چگونه یک چک پوینت ایجاد کنم و کد خود را در مخزن Git ذخیره کنم؟
برای اینکه ما این سه مفهوم را دنبال خواهیم کرد، می توانید آنها را در نمودار جریان زیر مشاهده کنید.
اجازه بدهید توضیح بدهم که وقتی یک فایل جدید ایجاد می کنیم، Git نمی داند که یک فایل جدید وجود دارد. پس ما خواهیم بود add
فایل را در قسمت مرحله بندی قرار دهید که در آن می توانید فایل ها را بررسی کنید و در صورت نیاز هر گونه بهینه سازی را انجام دهید و همچنین git می تواند آن را پیگیری کند. سپس یک عکس فوری از تمام فایلهای فعلی میگیریم، یعنی اساساً یک چک پوینت ایجاد میکنیم commit
در حال انجام فایل ها سپس اگر مخزن محلی خود را با GitHub متصل کرده باشیم، می توانیم push
آن، بنابراین همه می توانند به آن فایل ها دسترسی داشته باشند و با آن همکاری کنند، بررسی کنند و نظر بدهند.
من می دانم که این کاملاً گیج کننده است، اما همانطور که با هر مرحله به طور خاص پیش می رویم و نحوه انجام این کار را با استفاده از دستورات می بینیم پاک می شود.
کد ما را اضافه، متعهد و فشار دهید
اینها دستوراتی هستند که بیشتر اوقات هنگام کار بر روی پروژه خود از آنها استفاده خواهید کرد.
افزودن فایلها به ناحیه مرحلهبندی
در پوشه یک فایل جدید به نام as ایجاد کنید Readme.md
و چیزی در داخل آن بنویسید به عنوان مثال.
# Hello! My Name is Deveesh Shetty
PS .md
به معنی یک فایل علامت گذاری است که مانند یک فایل متنی است اما دارای ویژگی های اضافی است. مثل اینجا #
نشان می دهد <h1>
برچسب از HTML
Git نمی داند که شما یک فایل جدید ایجاد کرده اید، بنابراین می توانید این کار را با افزودن فایل به قسمت مرحله بندی با استفاده از دستور انجام دهید.
git add <file-name>
در اینجا در مورد من جایگزین کنید <file-name>
با Readme.md
نکته حرفه ای: می توانید نام فایل را جایگزین کنید .
(یک نقطه) برای افزودن تمام فایل های ردیابی نشده و اصلاح شده در آن پوشه به قسمت مرحله بندی.
git add .
در حال حذف فایل ها از ناحیه مرحله بندی
اکنون فایل های شما در قسمت مرحله بندی هستند. اما میخواهید برخی از فایلها را از قسمت مرحلهبندی که هنوز آماده نیستند حذف کنید، میتوانید به سادگی با استفاده از دستور زیر این کار را انجام دهید.
git reset <file-name>
ایجاد یک کامیت
Commit یا به عبارت ساده چک پوینت جایی است که شما تاریخچه گذشته کد خود را مانند یک عکس فوری ذخیره می کنید و بسیار مهم است زیرا می توانید از تکرارهای کد قبلی خود عبور کنید و همچنین از زمان انجام تغییر خاص در کد مطلع شوید.
هنگامی که تمام تغییرات را انجام دادید، ایجاد یک commit با انجام آن بسیار ساده است
git commit -m "Message describing the changes u made"
نکته حرفه ای: پیامی که در حین commit کردن می نویسید باید یک ایده مختصر در مورد تغییرات ایجاد شده در هنگام اجرای کد ارائه دهد.
به عنوان مثال در مورد من این است:
git commit -m "Adds Readme File"
اکنون یک چک پوینت برای کد خود ایجاد کرده اید که با اجرای دستور زیر می توانید آن را مشاهده کنید
git log
این دستور تمام تعهداتی را که با آن انجام داده اید به شما می دهد Author
از ارتکاب، Time
زمانی که commit انجام شد و همچنین یک شناسه منحصر به فرد فراخوانی شد Commit Hash
با Commit Message
.
گزارشها به ترتیب نزولی مرتب میشوند، به این معنی که آخرین commit در بالای صفحه قرار میگیرد و میتوانید با فشار دادن به موارد قدیمی دسترسی پیدا کنید. Arrow-down
کلید پس از عبور از آن، فشار دهید q
برای خروج از دستور log
اگر فقط میخواهید جریان commitهای اخیر را بدون اطلاعات اضافی درباره نویسنده و زمان ببینید، میتوانید از دستور زیر برای رسیدن به آن استفاده کنید.
git log --oneline
همچنین ممکن است متوجه چیزی شبیه به این شده باشید (HEAD -> master)
یا (HEAD -> main)
. اینجا HEAD
به معنای تعهد فعلی که در آن هستید، در مورد ما این است آخرین ارتکاب و main
و master
به معنی نام پیش فرض شعبه است. فعلا نگران شاخه ها نباشید، در قسمت های بعدی وبلاگ به آن پرداخته می شود 🙂
ذکر افتخاری
میتوانید بعد از هر فرآیند از این دستور استفاده کنید تا به شما بگوید وضعیت فعلی فایلها در پروژه شما چگونه است
git status
یا برای دریافت خلاصه همه چیز را اضافه کنید -s
پرچم بعد از آن
در مقابل هر نام فایل یک یا دو حرف دریافت می کنید که می توانید برای کسب اطلاعات بیشتر در مورد آن به این جدول مراجعه کنید.
فشار دادن کد شما
تمام کارهایی که ما تا به حال انجام دادیم فقط به رایانه شخصی شما محدود می شود و به همین دلیل نامیده می شود local repository
، هیچ کس دیگری نمی تواند آن را ببیند.
- اکنون، شما در حال کار بر روی یک پروژه هستید و می خواهید دوستتان در این زمینه به شما کمک کند. چگونه می توانید آن را انجام دهید؟ ساده است که باید انجام دهید
push
کد شما به aremote repository
، که اساساً پوشه ای است که در جایی میزبانی می شود و هر کسی می تواند به آن دسترسی داشته باشد (U می تواند آن را خصوصی و برای افراد کمی نیز محدود کند). - اینجاست که GitHub به تصویر می آید GitHub مانند یک فضای ذخیره سازی برای تمام مخازن git شما است، جایی که افراد می توانند کد شما را مشاهده کنند، بررسی کنند، نظر بدهند و با آنها همکاری کنند.
توجه داشته باشید: شما می توانید به جای GitHub از هر پلتفرم دیگری مانند GitLab، BitBucket و غیره استفاده کنید. در اینجا من از GitHub در این وبلاگ استفاده می کنم.
قبل از اینکه به سراغ فشار دادن کد خود برویم، باید با چند چیز کار کنیم
- اگر حساب GitHub ندارید، با رفتن به GitHub یکی ایجاد کنید
- هنگامی که حساب خود را دارید، با کلیک بر روی یک مخزن جدید ایجاد کنید
+
نماد در سمت راست بالای نوار ناوبری.
- الف بدهید
Name
به مخزن و در صورت تمایل می توانید aDescription
همچنین. سپس می توانید نمایان بودن مخزن را انتخاب کنید.Public
یعنی همه می توانند آن را ببینند وPrivate
یعنی فقط برای شما قابل مشاهده است و در صورت نیاز می توانید افرادی را انتخاب کنید که بعداً در تنظیمات می توانند مخزن را ببینند.
صفحه باید چیزی شبیه به این باشد –
- را فشار دهید
Create repository
دکمه
شما باید به a هدایت شوید راه اندازی سریع صفحه، جایی که اگر به پایین اسکرول کنید میتوانید این قطعه کد را پیدا کنید (من را کپی نکنید زیرا در حساب شما متفاوت خواهد بود)
توجه داشته باشید: ما یک مخزن git موجود را فشار می دهیم زیرا قبلاً یک مخزن را در مراحل قبلی ایجاد کرده ایم، نیازی به انجام مجدد آن نیست.
شما می توانید آن دستورات را در ترمینال خود کپی و جایگذاری کنید و باید انجام شود push
کد موجود خود را به مخزن راه دور خود.
اما، من به شما اجازه نمی دهم فقط کپی پیست کنید، بیایید ببینیم هر دستور در اینجا چه می کند
git remote add origin https://github.com/Deveesh-Shetty/Learn-Git.git
در مورد شما URL متفاوت خواهد بود
کاری که این دستور انجام می دهد این است که به git می گوید که یک مخزن راه دور به نام اضافه کند origin
و مسیر مخزن در url ذکر شده است
می توانید مخزن راه دور خود را با اجرا بررسی کنید
git remote -v
باید مخزن(های) راه دور را فهرست کند
دستور بعدی، برای اطمینان از اینکه نام شعبه در مخزن git با تغییر نام شاخه یکی است، استفاده می شود، بنابراین در مرحله بعد هیچ مشکلی وجود نخواهد داشت.
git branch -M master
توجه داشته باشید: در رایانه شخصی شما این فرمان ممکن است داشته باشد main
بجای master
کاملاً خوب است، بر اساس نام شعبه ای است که در GitHub ذکر شده است. پس عوضش نکن
همچنین لازم به ذکر است که دو مرحله فوق تنها یک بار در هنگام ایجاد یک مخزن جدید مورد نیاز است.
در نهایت، با اجرا کردن کد را فشار می دهیم
git push -u origin master
اگر آن را تجزیه کنم به این شکل می شود
git push -u <remote-repo-name> <branch-name>
-
ما به git می گوییم که کد را به مخزن راه دوری که اضافه کردیم، فشار دهد
origin
و به شعبه نامیده می شودmaster
یا در مورد شما ممکن استmain
. -
ما در حال استفاده از
-u
پرچم گذاری کنید تا دفعه بعد اگر فقط تایپ کنیمgit push
دستورالعمل های قبلی را به خاطر می آورد و آن را فشار می دهدorigin master
.
حالا اگر به GitHub برگردید راه اندازی سریع صفحه، و آن را تازه کردن، Voila! شما باید کد خود را در آنجا ببینید. اکنون، می توانید پیوند مخزن GitHub را با دوستان خود به اشتراک بگذارید و پروژه هایی را که ساخته اید به آنها نشان دهید 🙂
خلاصه کردن همه چیزهایی که یاد گرفتیم
این فرآیند اساسی است که چگونه می توانید کد خود را به GitHub اضافه کنید و جهان را از پروژه های خود مطلع کنید. بگذارید خیلی سریع آن را برای شما خلاصه کنم
- هر زمان که تغییراتی در کد خود انجام دهید،
add
آن را به منطقه صحنه.
git add .
- سپس وقتی همه چیز خوب به نظر می رسد، و شما آماده هستید که فرآیند خود را به عنوان یک ایست بازرسی ذخیره کنید،
commit
کد.
git commit -m "what-this-commit-adds/improves"
- پس از آن زمانی که به اندازه کافی اعتماد به نفس دارید که می توانید به دیگران کدنویسی کنید
push
آن را به GitHub
git push origin <branch-name>
<branch-name>
می تواند باشد master
یا main
بنابراین Git چقدر ساده است، در پروژههای بعدی شما شروع به استفاده از Git کنید تا پیشرفت خود را ثبت کنید و همچنین از GitHub برای نمایش کار خود و همچنین برای کار بر روی سایر پروژههای منبع باز جالب استفاده کنید.
بعدی چی؟
این دستورات اساسی است که بیشتر اوقات از آنها استفاده خواهید کرد، اما Git به این محدود نمی شود، کارهای زیادی می توانید انجام دهید.
من در حال برنامه ریزی برای انتشار وبلاگ های بیشتری در ادامه این موضوع هستم که مفاهیمی مانند شاخه بندی، درخواست های کششی، نحوه مشارکت در مخزن دیگران و موارد دیگر را پوشش می دهد.
به من اطلاع دهید که این وبلاگ چقدر آموزنده بود، تا با دیدن نظرات شما مشتاق تر شوم و اگر پیشرفت هایی وجود دارد می توانم آن را نیز انجام دهم.
ممنون که تا آخر سر زدی، با یه وبلاگ دیگه ببینمت 😄.
دیویش شتی
با من در GitHub ارتباط برقرار کنید، توییتر