دستورات گیت

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

برای اینکه گیت به درستی اجرا بشه، پوشه ای که میخوایم فایل های پروژه رو در اون قرار بدیم باید مشخص بشه و راه اندازی (initialize / init) بشه. با این کار به گیت میگیم که شروع به ردیابی تغییرات در محتوای پوشه ها و فایل ها کنه، مگر اینکه خودمون بهش بگیم یه سریا رو نادیده بگیره.

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

git init

برای اینکه گیت بتونه تغییرات یک فایل رو ردیابی کنه و تشخیص بده، اول باید اون فایل add و commit بشه. یک کامیت به ما اجازه میده تا تغییرات فایل در بازه های زمانی مختلف، مثل کامیتی که یه ساعت پیش زده شده و نسخه کنونی فایل رو مشاهده کنیم.


کامیت چیه؟

کامیت نسخه ذخیره شده مشخصی از وضعیت یک فایل یا پوشه در مدت زمان خاصی هست که با یک کد خاص مثل 521747298a3790fde1710f3aa2d03b55020575aa شناسایی میشه.


حالا که میدونیم کامیت چیه، وقتشه بریم یک فایل رو به صورت زیر add و commit کنیم:

git add hello.txt
git commit -m "Initial commit"

حالا پس از کامیت کردن میتونیم وضعیت فایل هامون رو پس از ایجاد تغییر مشاهده کنیم:

git status

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

1. Git commands

برای نمایش تغییراتی که در فایل ایجاد کردیم، که حالا میتونه حذف کردن یا اضافه کردن محتوا به فایل باشه باید از کامند زیر استفاده کنیم:

git diff

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

Screenshot 2023-05-21 232524

بهتره که توی هر پوشه یک فایل gitignore. قرار بدیم. این فایل حاوی اسم های پوشه ها و فایل هایی هست ک میخوایم گیت اونها رو نادیده بگیره. اینطوری میتونیم بدون نگرانی از اضافه شدن فایل هایی مثل env. بقیه فایل های پروژمون رو کامیت کنیم.

برای ایجاد این فایل میتونید از کامند زیر در ترمینال استفاده کنید:

touch .gitignore

اگر از ویندوز استفاده میکنید میتونید با هر روش دیگه ای این کار رو انجام بدید.

حالا برای اینکه از اضافه شدن و تشخیص تغییرات یک سری از فایل ها توسط گیت جلوگیری کنیم میتونیم اسمشون رو در این فایل اضافه کنیم. اینجا میخوایم تمام فایل های env. نادیده گرفته بشن:

echo ".env" >> .gitignore

توسعه دهنده ها معمولا فایل ها و پوشه های زیر رو در فایل gitignore. قرار میدن:

  • فایل های متغیر های محیطی (env.)
  • پوشه virtualenv، مثل env و venv
  • فایل های مربوط به کد ادیتور ها و IDE ها (مثل vscode. و idea.)