جلسه شماره 49رایگان

Git Remote Github | گیت ریموت و گیت هاب

00:44:52

توضیحات جلسه

🎥 این ویدیو قسمت چهل و نهم از بوت‌کمپ رایگان جاواست. 📚 Git – کار با Remoteها و اتصال به GitHub در این جلسه وارد دنیای همکاری تیمی و کار با مخازن راه‌دور (Remote Repositories) در Git می‌شویم. یاد می‌گیریم چگونه پروژه خود را به یک مخزن مانند GitHub متصل کنیم، تغییرات را ارسال (push) یا دریافت (pull) کنیم و در یک محیط تیمی به‌صورت مؤثر همکاری داشته باشیم. در این ویدیو بررسی می‌کنیم: - مفهوم Remote در Git و کاربرد آن - آشنایی با GitHub به عنوان یکی از محبوب‌ترین سرویس‌های میزبانی مخازن - ساخت اکانت و ایجاد Repository در GitHub - اتصال پروژه لوکال به GitHub با دستور git remote add - مشاهده لیست Remoteها، تغییر نام و حذف آن‌ها - ارسال تغییرات با git push و دریافت تغییرات با git pull - ساخت GitHub Token برای احراز هویت - دریافت پروژه از مخزن راه‌دور با دستور git clone - مرور نهایی و جمع‌بندی نکات مهم 💬 گروه پرسش و پاسخ تلگرام: @programmingByFarzadAfi 💬 گروه پرسش و پاسخ بله: @programming_by_farzadafi هر سوالی داشتی، می‌تونی توی گروه بپرسی؛ من یا مربی‌های گروه کمکت می‌کنیم 💬 🎯 بوت‌کمپ رایگان جاوا – آموزش پروژه‌محور برای یادگیری عمیق و ورود به بازار کار

جزوه و مستندات

مفاهیم کلیدی

Git Remote

یک ارجاع یا پیوند به نسخه‌ای از مخزن (Repository) است که در مکانی خارج از سیستم محلی شما، مانند یک سرور یا پلتفرم ابری، میزبانی می‌شود.

GitHub

پلتفرمی مبتنی بر وب است که از سیستم کنترل نسخه Git استفاده می‌کند و امکاناتی برای مدیریت پروژه، همکاری تیمی و ردیابی تغییرات از هر نقطه‌ای از جهان فراهم می‌سازد.

Repository (Repo)

فضایی برای ذخیره تمام فایل‌های پروژه به همراه تاریخچه کامل تغییرات آن‌ها است. مخزن‌ها می‌توانند Public باشند و برای همه قابل مشاهده باشند یا Private باشند و دسترسی به آن‌ها محدود شود.

Push

فرایند ارسال کدها و Commitهای محلی از سیستم برنامه‌نویس به مخزن Remote است.

Pull

فرایند دریافت آخرین به‌روزرسانی‌ها و تغییراتی است که سایر اعضای تیم در مخزن Remote اعمال کرده‌اند. این تغییرات پس از دریافت با نسخه محلی پروژه ادغام می‌شوند.

Pull Request (PR)

درخواستی برای بررسی کدهای جدید و پیشنهاد ادغام آن‌ها در شاخه اصلی پروژه است. استفاده از Pull Request به افزایش کیفیت کد و بهبود همکاری تیمی کمک می‌کند.

Issue

ابزاری برای ثبت گزارش باگ‌ها، پیشنهادها یا وظایفی است که باید در پروژه انجام شوند. با استفاده از Issue می‌توان روند پیشرفت کار را پیگیری کرد.

Git Clone

فرایند ایجاد یک کپی کامل و دقیق از مخزن Remote روی سیستم محلی است. این کار معمولاً برای شروع کار روی یک پروژه انجام می‌شود.

Personal Access Token (PAT)

یک کد امنیتی است که به‌جای رمز عبور معمولی، برای احراز هویت هنگام انجام عملیاتی مانند Push استفاده می‌شود و امنیت دسترسی به GitHub را افزایش می‌دهد.


موارد مصاحبه ای

تفاوت اصلی بین Git و GitHub چیست؟

Git یک ابزار کنترل نسخه محلی است که تغییرات فایل‌ها را مدیریت می‌کند. در مقابل، GitHub یک سرویس میزبانی مبتنی بر وب است که امکان اشتراک‌گذاری مخزن‌های Git و همکاری تیمی روی آن‌ها را فراهم می‌سازد.

چرا در GitHub استفاده از Personal Access Token به‌جای Password الزامی است؟

به دلایل امنیتی، GitHub دیگر اجازه احراز هویت مستقیم با رمز عبور حساب کاربری را در عملیات خط فرمان (CLI) نمی‌دهد. Personal Access Token امکان محدودسازی سطح دسترسی و تعیین تاریخ انقضا را فراهم می‌کند و امنیت پروژه را افزایش می‌دهد.

تفاوت بین مخازن Public و Private در چیست؟

مخزن‌های Public برای همه کاربران اینترنت قابل مشاهده و Clone کردن هستند و معمولاً در پروژه‌های متن‌باز استفاده می‌شوند. در مقابل، مخزن‌های Private فقط برای افرادی قابل دسترسی هستند که مالک پروژه آن‌ها را تعیین کرده است.

چه زمانی از دستور git remote add استفاده می‌کنیم؟

زمانی که پروژه‌ای را به‌صورت محلی و با اجرای دستور git init ایجاد کرده‌اید و می‌خواهید آن را به یک مخزن خالی در GitHub متصل کنید، از دستور git remote add استفاده می‌شود. پس از این اتصال، می‌توانید کدهای خود را Push کنید.

مزیت اصلی استفاده از Remote چیست؟

علاوه بر فراهم کردن امکان همکاری تیمی، مخزن Remote مانند یک نسخه پشتیبان (Backup) نیز عمل می‌کند. در صورت خرابی سخت‌افزاری سیستم محلی، کدهای شما در مخزن راه دور باقی می‌مانند.


مثال کاربردی

سناریوی اتصال پروژه محلی به GitHub و به‌روزرسانی آن:

۱. ایجاد اتصال: ابتدا در GitHub یک مخزن جدید می‌سازیم. سپس با اجرای دستور git remote add origin <URL> در خط فرمان، پروژه محلی را به مخزن GitHub متصل می‌کنیم.

۲. تغییر نام شاخه: برای هماهنگی با استاندارد GitHub، نام شاخه اصلی را از master به main تغییر می‌دهیم:

git branch -M main

۳. ارسال اولین نسخه: با اجرای دستور زیر، کدهای پروژه را به سرور ارسال می‌کنیم:

git push -u origin main

در این مرحله، نام کاربری و Personal Access Token از شما درخواست می‌شود.

۴. دریافت تغییرات هم‌تیمی: اگر یکی از اعضای تیم تغییری در پروژه ایجاد کرده باشد، با اجرای دستور git pull آن تغییرات را دریافت می‌کنیم و پروژه محلی خود را به‌روز می‌سازیم.


بیشتر بدانید

Git Tip

نام origin یک نام قراردادی و استاندارد برای مخزن اصلی Remote است؛ اما استفاده از آن اجباری نیست و می‌توانید هر نام دلخواهی، مانند نام خودتان، برای ریموت انتخاب کنید.

Git Tip

برای مشاهده فهرست ریموت‌های متصل به پروژه و آدرس URL آن‌ها، از دستور زیر استفاده کنید:

git remote -v

سوئیچ -v مخفف Verbose است و اطلاعات کامل‌تری نمایش می‌دهد.

Git Tip

برای تغییر نام یک ریموت، می‌توانید از دستور زیر استفاده کنید:

git remote rename <old_name> <new_name>

امنیت توکن

هنگام ساخت Personal Access Token در GitHub، توجه داشته باشید که توکن فقط یک‌بار نمایش داده می‌شود. آن را در مکانی امن ذخیره کنید؛ زیرا پس از بستن صفحه، دیگر امکان مشاهده مجدد آن وجود ندارد.