Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
گیت (Git) یک سیستم کنترل ورژن (Version Control System) هستش که لینوس توروالدز، خالق لینوکس، در سال ۲۰۰۵ اون رو توسعه داد. 🚀 توروالدز این سیستم رو برای مدیریت بهتر کد لینوکس ساخت، چون سیستم‌های قبلی جوابگوی نیازهای تیمش نبودن. 😅

گیت به برنامه‌نویس‌ها اجازه می‌ده تغییرات کدشون رو تو فایل‌ها ثبت و ردگیری کنن. 📂 هر تغییری که ثبت می‌شه یه «کامیت» (Commit) هستش که شامل یه تایم‌استمپ 🕰، نویسنده ✍️ و پیام توضیحی می‌شه. این سیستم باعث می‌شه بشه به راحتی فهمید چه کسی، چه تغییری رو، کی و چرا ایجاد کرده. 🤔

یکی از ویژگی‌های اصلی گیت، برنچ‌ها (Branch‌) هستن. 🌿 برنچ‌ها به تیم‌ها اجازه می‌دن روی فیچرهای مختلف به صورت موازی کار کنن. مثلاً یه برنچ برای فیکس باگ‌ها 🐞، یکی برای فیچرهای جدید و یکی هم برای تست. وقتی کار روی یه برنچ تموم می‌شه، می‌شه اون رو با برنچ اصلی (معمولاً main یا master) مرج کرد. 🔀

گیت از مدل Distributed استفاده می‌کنه، یعنی هر برنامه‌نویس یه کپی کامل از ریپوزیتوری (Repository) رو روی سیستم خودش داره. 💻 این باعث می‌شه حتی بدون اینترنت هم بشه کار کرد و تغییرات رو ثبت کرد. 🌍 بعداً وقتی به اینترنت وصل شدی، می‌تونی تغییراتت رو با ریموت (مثل گیت‌هاب یا گیت‌لب) سینک کنی. 🔄

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

‏git init: شروع یه ریپوزیتوری جدید 🎉
‏git clone: کپی کردن یه ریپوزیتوری از ریموت 📥
‏git add: اضافه کردن فایل‌ها به استیج 📝
‏git commit: ثبت تغییرات
‏git push: آپلود تغییرات به ریموت ⬆️
‏git pull: دریافت آخرین تغییرات از ریموت ⬇️
‏git checkout: سوییچ بین برنچ‌ها 🔄
‏git merge: ترکیب دو برنچ 🔗
گیت از یه سیستم هوشمند برای تشخیص تغییرات استفاده می‌کنه که به جای ذخیره کل فایل در هر تغییر، فقط تفاوت‌ها رو نگه می‌داره. 🧠 این باعث می‌شه حجم ریپوزیتوری کمتر بشه و سرعت کار بالاتر بره. ⚡️

برای کانفیگ گیت می‌تونی از فایل .gitconfig استفاده کنی. توش می‌شه تنظیمات مختلف مثل یوزرنیم 👤، ایمیل 📧، ادیتور پیش‌فرض 🖋 و الگوهای ignore 🛑 رو مشخص کرد. همچنین می‌شه برای هر ریپو یه کانفیگ جداگانه با فایل .git/config داشت. 📂

#Git #VersionControl #گیت #کنترل_ورژن

💙💙 @philoLearn 💙💙