دستورات گیت
همونطور که قبلا گفتیم، از گیت میشه برای نگهداری، ردیابی و استفاده مجدد از نسخه های قبلی فایل های پروژه استفاده کرد. با این حال تنها دستورات و عملیات ساده و پایه گیت در این کارگاه آموزش داده میشن که قراره توی همین قسمت معرفیشون کنیم.
برای اینکه گیت به درستی اجرا بشه، پوشه ای که میخوایم فایل های پروژه رو در اون قرار بدیم باید مشخص بشه و راه اندازی (initialize / init) بشه. با این کار به گیت میگیم که شروع به ردیابی تغییرات در محتوای پوشه ها و فایل ها کنه، مگر اینکه خودمون بهش بگیم یه سریا رو نادیده بگیره.
برای راه اندازی و ایجاد یک ریپازیتوری گیت در پروژمون باید کامند زیر رو در ترمینال اجرا کنیم:
git init
برای اینکه گیت بتونه تغییرات یک فایل رو ردیابی کنه و تشخیص بده، اول باید اون فایل add و commit بشه. یک کامیت به ما اجازه میده تا تغییرات فایل در بازه های زمانی مختلف، مثل کامیتی که یه ساعت پیش زده شده و نسخه کنونی فایل رو مشاهده کنیم.
کامیت چیه؟
کامیت نسخه ذخیره شده مشخصی از وضعیت یک فایل یا پوشه در مدت زمان خاصی هست که با یک کد خاص مثل 521747298a3790fde1710f3aa2d03b55020575aa شناسایی میشه.
حالا که میدونیم کامیت چیه، وقتشه بریم یک فایل رو به صورت زیر add و commit کنیم:
git add hello.txt
git commit -m "Initial commit"
حالا پس از کامیت کردن میتونیم وضعیت فایل هامون رو پس از ایجاد تغییر مشاهده کنیم:
git status
پس از اجرای چند تا کد بالا باید خروجی مشابه زیر ببینید:
برای نمایش تغییراتی که در فایل ایجاد کردیم، که حالا میتونه حذف کردن یا اضافه کردن محتوا به فایل باشه باید از کامند زیر استفاده کنیم:
git diff
پس از اجرای کد بالا باید خروجی مشابه زیر دریافت کنید:
بهتره که توی هر پوشه یک فایل gitignore. قرار بدیم. این فایل حاوی اسم های پوشه ها و فایل هایی هست ک میخوایم گیت اونها رو نادیده بگیره. اینطوری میتونیم بدون نگرانی از اضافه شدن فایل هایی مثل env. بقیه فایل های پروژمون رو کامیت کنیم.
برای ایجاد این فایل میتونید از کامند زیر در ترمینال استفاده کنید:
touch .gitignore
اگر از ویندوز استفاده میکنید میتونید با هر روش دیگه ای این کار رو انجام بدید.
حالا برای اینکه از اضافه شدن و تشخیص تغییرات یک سری از فایل ها توسط گیت جلوگیری کنیم میتونیم اسمشون رو در این فایل اضافه کنیم. اینجا میخوایم تمام فایل های env. نادیده گرفته بشن:
echo ".env" >> .gitignore
توسعه دهنده ها معمولا فایل ها و پوشه های زیر رو در فایل gitignore. قرار میدن:
- فایل های متغیر های محیطی (env.)
- پوشه virtualenv، مثل env و venv
- فایل های مربوط به کد ادیتور ها و IDE ها (مثل vscode. و idea.)