از طریق منوی جستجو مطلب مورد نظر خود در وبلاگ را به سرعت پیدا کنید
نحوه ایجاد و همگام سازی مخازن Git و GitHub
سرفصلهای مطلب
کار با Git و GitHub اغلب بخشی ضروری از وظایف برنامه نویسی روزانه شما است. در بسیاری از موارد، شما هم یک مخزن Git محلی و هم یک مخزن GitHub راه دور برای یک پروژه می خواهید.
- با مخزن محلی، شما روی کپی خود از پروژه کار می کنید. قبل از اینکه آن تغییرات را به مخزن راه دور فشار دهید تا دیگران بررسی و ادغام شوند، به طور مستقل تغییرات را ایجاد و آزمایش می کنید.
- شما از مخزن از راه دور برای ذخیره سازی خارج از سایت و به اشتراک گذاری پروژه با دیگران.
این آموزش از طریق دو سناریو ارائه می شود:
- اول محلی: ابتدا یک مخزن محلی ایجاد می کنید و کد خود را به آن مخزن متعهد می کنید. در مدتی بعد، یک مخزن راه دور ایجاد می کنید. با وجود این دو مخزن، میخواهید آنها را هماهنگ نگه دارید. این سناریو در صورتی رایج است که پروژه ای را به تنهایی شروع کرده باشید و بعداً بخواهید آن پروژه را به اشتراک بگذارید.
- ابتدا از راه دور: در این سناریو، یک مخزن از راه دور موجود است و شما می خواهید با آن کد کار کنید. شما از آن مخزن راه دور برای ایجاد مخزن محلی خود استفاده می کنید تا بتوانید تغییرات را به صورت محلی انجام دهید و آزمایش کنید. با وجود این دو مخزن، میخواهید آنها را هماهنگ نگه دارید. این سناریو زمانی رایج است که روی یک پروژه تیمی یا منبع باز کار می کنید که دارای مخزن GitHub موجود است.
در اینجا چیزی است که ما در این آموزش پوشش خواهیم داد:
- Git، GitHub و Repository به چه معناست؟
- نحوه نصب Git و GitHub
- سناریو 1: اول محلی
- نحوه ایجاد یک مخزن محلی
- نحوه کامیت کردن فایل ها به مخزن محلی
- چگونه یک مخزن از راه دور GitHub ایجاد کنیم
- چگونه به Git درباره GitHub بگوییم
- نحوه همگام سازی مخازن محلی و راه دور
- سناریو 2: ابتدا از راه دور
- نحوه کلون کردن یک مخزن
- بسته بندی
بیایید با یک مقدمه کوتاه از اصطلاحاتی که استفاده می کنیم شروع کنیم، سپس به دو سناریوی خود بپردازیم.
Git، GitHub و Repository به چه معناست؟
آ مخزن، یا به اختصار “repo”، نسخه های فایل های پروژه شما را ذخیره و ردیابی می کند. همانطور که در آن فایلها تغییراتی ایجاد میکنید، آن فایلها را برای نگهداری در مخزن متعهد میکنید (یا کپی میکنید). مخزن فهرستی از تمام تغییرات متعهد شما را به نام a نگهداری می کند ارتکاب تاریخ.
Git یک سیستم کنترل نسخه محبوب و پرکاربرد برای ایجاد و کار با مخازن است. به صورت محلی روی کامپیوتر شما اجرا می شود. میتوانید Git را بر روی هر پلتفرمی دانلود، نصب و استفاده کنید، بدون هیچ هزینه یا هزینهای. با Git، یک مخزن محلی در پوشه کاری پروژه خود ایجاد می کنید و Git تاریخچه commit را برای فایل های آن پوشه ذخیره می کند.
اگر تازه وارد Git هستید، برای معرفی این ویدیو را تماشا کنید:
GitHub وب سایتی است که میزبان مخازن از راه دور در اینترنت است. یک حساب GitHub اولیه نیز رایگان است. از GitHub برای ایجاد یک مخزن از راه دور برای پروژه خود استفاده کنید. با یک مخزن از راه دور، می توانید کد خود را خارج از سایت ذخیره کنید، با دیگران همکاری کنید، روی پروژه های شرکت یا منبع باز کار کنید و نمونه کارها خود را به کارفرمایان بالقوه نشان دهید.
اگر تازه وارد GitHub هستید، برای معرفی این ویدیو را تماشا کنید:
قبل از پرش به سناریوهای خود، باید Git را نصب کرده و یک حساب GitHub ایجاد کنیم.
نحوه نصب Git و GitHub
اگر میخواهید با مثالهای ارائهشده در این آموزش کار کنید، چند مرحله آمادهسازی وجود دارد. اما اگر قبلاً این ابزارها را نصب کردهاید یا ترجیح میدهید این مقاله را بدون کدنویسی بخوانید، راحت به بخش بعدی بروید.
ابتدا اگر Git را ندارید، آن را روی رایانه خود نصب کنید. برای آموزش گام به گام نصب Git، قسمت دوم این ویدیو را ببینید:
در مرحله بعد، اگر قبلاً ندارید، یک حساب GitHub ایجاد کنید. این ویدیو دستورالعمل های گام به گام ایجاد یک حساب GitHub را ارائه می دهد:
در نهایت، یک پوشه کار بر روی رایانه خود ایجاد کنید (من نام خودم را گذاشتم recipes
در من documents
پوشه). سپس دو فایل متنی ساده در آن پوشه ایجاد کنید: file1.txt
و file2.txt
. حتی اگر از فایلهای متنی استفاده میکنیم، فرآیند همگامسازی که در این مقاله توضیح داده شده است با هر نوع فایل کدی یکسان است.
اکنون ما آماده هستیم تا از دو سناریو خود عبور کنیم: ابتدا محلی و ابتدا از راه دور.
سناریو 1: اول محلی
بگویید که می خواهید یک وب سایت دستور العمل (یا شاید یک برنامه) برای جمع آوری و مدیریت دستور العمل ها بسازید. شما یک مخزن محلی ایجاد می کنید تا بتوانید به راحتی تغییرات خود را در فایل های پروژه پیگیری کنید.
بعداً تصمیم میگیرید که یک مخزن راه دور نیز میخواهید تا یک کپی از فایلهای خود را خارج از سایت نگه دارد و پروژه را با دیگران به اشتراک بگذارید. هنگامی که مخزن راه دور را دارید، می خواهید مخزن محلی خود را با آن مخزن راه دور هماهنگ نگه دارید.
این سناریو در شکل 1 نشان داده شده است:
با اعداد شکل 1:
- مخزن محلی که به عنوان یک جعبه به تصویر کشیده شده است، ابتدا ایجاد می شود.
- مخزن راه دور مدتی بعد با GitHub ایجاد می شود.
- این دو مخزن با هم هماهنگ نگهداری می شوند.
بیایید این مراحل را با جزئیات طی کنیم.
نحوه ایجاد یک مخزن محلی
ما قبلاً یک پوشه کاری آماده کرده ایم و دو فایل ایجاد کرده ایم که شروع پروژه ما هستند.
برای ایجاد یک مخزن محلی برای آن پروژه، ترمینال یا خط فرمان خود را باز کنید و به آن پوشه کاری بروید.
سپس با استفاده از دستور زیر یک مخزن جدید Git را مقداردهی اولیه کنید:
git init
این دستور یک مخزن جدید Git را در پوشه فعلی مقداردهی اولیه می کند. فرآیند اولیه سازی یک a را ایجاد می کند .git
پوشه ای در پوشه پروژه که فایل ها و داده ها را برای مخزن ذخیره می کند.
این .git
پوشه ممکن است به طور پیش فرض پنهان باشد. در مک یاب، استفاده کنید Command + Shift + . (period)
تا پوشه ها و فایل های مخفی ظاهر شوند. در ویندوز، از تب File Explorer View استفاده کنید و بررسی کنید Hidden items
برای نمایش پوشه ها و فایل های مخفی
ما اکنون یک مخزن محلی داریم! بیایید دو فایل پروژه خود را به آن مخزن commit کنیم.
نحوه کامیت کردن فایل ها به مخزن محلی
هر زمان که فایلهای جدیدی ایجاد میکنیم، فایلهای موجود را تغییر میدهیم یا فایلها را حذف میکنیم، آن تغییرات را به مخزن محلی خود انجام میدهیم. این تضمین می کند که مخزن وضعیت فعلی پروژه ما را ردیابی می کند.
تخصیص فایل ها به یک مخزن محلی به دو مرحله نیاز دارد:
- صحنه
- مرتکب شدن
ابتدا فایل ها را به ناحیه مرحله بندی Git اضافه کنید:
git add .
ما به Git میگوییم که کدام فایلها را میخواهیم در آن commit اضافه کنیم. مرحله بندی به ما امکان می دهد به طور انتخابی انتخاب کنیم که کدام تغییرات را در یک commit قرار دهیم.
با استفاده از .
(دوره) تمام فایلهای موجود در پوشه کاری (و زیرپوشههای آن) را به ناحیه مرحلهبندی اضافه میکند. اگر فقط میخواهید فایلهای خاصی را اضافه کنید، میتوانید در عوض آنها را فهرست کنید.
در مرحله بعد، ما فایل های مرحله بندی شده را به مخزن محلی متعهد می کنیم:
git commit -m "Initial commit"
این دستور فایلهای موجود در ناحیه مرحلهبندی Git را به مخزن محلی متصل میکند.
را -m
گزینه برای یک پیام commit است. دنبال کن -m
با پیام، در نقل قول. حتماً یک پیام واضح برای توصیف تغییراتی که انجام می دهید تعریف کنید.
برای اطلاعات بیشتر در مورد تعریف پیام های commit عالی، این ویدیو را ببینید:
پس از انجام این مراحل، ترمینال مانند شکل زیر ظاهر می شود:
را init
دستور یک پیام وضعیت نشان می دهد که به ما می گوید یک مخزن Git خالی ایجاد کرده است.
را add
فرمان هیچ خروجی ارائه نمی دهد.
را commit
دستور شعبه ای را که در آن هستیم نمایش می دهد ( main
در این مثال)، چند کاراکتر اول شناسه commit و پیام commit. سپس فایل های تغییر یافته را لیست می کند. در این مثال، 2 فایل تغییر کرده و هر دو درج شده بودند (فایل های جدید).
شماره بعد از create mode
نوع فایل و مجوزها را نشان می دهد. 100644
به این معنی که اینها فایل های معمولی هستند، نه پوشه ها، با مجوز خواندن و نوشتن مالک.
با وجود مخزن محلی ما، زمان ایجاد مخزن راه دور فرا رسیده است.
چگونه یک مخزن از راه دور GitHub ایجاد کنیم
اکنون با استفاده از GitHub یک مخزن از راه دور در GitHub ایجاد می کنیم. به وبسایت GitHub به آدرس www.github.com بروید و وارد شوید. اگر حساب GitHub ندارید، بخش «نحوه نصب Git و GitHub» را در قسمت قبل در این آموزش ببینید تا مراحل ایجاد یک حساب کاربری را انجام دهید.
برای تماشای روند ایجاد یک مخزن GitHub، این ویدیو را ببینید:
پس از ورود به گیت هاب، به داشبورد شخصی خود هدایت می شوید. داشبورد شخصی GitHub شما اطلاعاتی در مورد مخازن و پروژه های شما ارائه می دهد.
اگر این اولین باری است که شما یک مخزن در GitHub ایجاد می کنید، یک A را ارائه می دهد Create Repository
دکمه برای کمک به شما برای شروع. اگر قبلاً از GitHub استفاده کرده اید، یک علامت را مشاهده خواهید کرد New
به جای آن را فشار دهید.
در هر صورت، با کلیک بر روی دکمه به مسیر حرکت می کنید Create a new repository
صفحه همانطور که در شکل 3 نشان داده شده است.
با وارد کردن نام مخزن شروع کنید. نام مخزن باید کوتاه، اما توصیفی از پروژه شما باشد. باید در درون منحصر به فرد باشد شما حساب GitHub. GitHub آن را برای شما بررسی می کند.
قراردادهای عمومی برای نام مخازن استفاده از حروف کوچک را پیشنهاد می کند. اگر چند کلمه وجود دارد، از خط تیره بین کلمات استفاده کنید، مانند کتاب دستور غذا.
به مخزنم زنگ زدم recipes
. و فلش سبز کنار نام به این معنی است که در این حساب GitHub منحصر به فرد است.
در صورت تمایل، می توانید یک توضیح ارائه دهید. اینجاست که در صورت تمایل می توانید اطلاعات بیشتری در مورد مخزن قرار دهید.
در مرحله بعد، شما می توانید یک مخزن عمومی یا خصوصی ایجاد کنید. اگر یک مخزن عمومی ایجاد کنید، هر کسی در اینترنت می تواند آن را ببیند. اما فقط همکارانی که شما انتخاب می کنید می توانند به آن متعهد شوند. بنابراین لازم نیست نگران تغییر فایل های شما توسط افراد غریبه باشید. اگر یک مخزن خصوصی ایجاد کنید، به جز همکاران انتخابی شما، خصوصی است.
مخازن خود را عمومی کنید تا کد خود را با دیگران به اشتراک بگذارید، مگر اینکه کد شما اختصاصی باشد.
سپس می توانید یک فایل readme ایجاد کنید. یک فایل readme به کسانی که به یک مخزن نگاه می کنند، ایده ای از این که آن مخزن برای چه کاری است و دستورالعمل هایی در مورد استفاده از آن می دهد. برای افزودن فایل readme کادر را علامت بزنید.
یک الگوی .gitignore به شما کمک می کند تشخیص دهید که کدام فایل ها را در پوشه کاری خود انجام می دهید نه می خواهید در ردیابی نسخه Git گنجانده شود. برای یک برنامه، نمیخواهید فایلهای ساخت متوسط را اضافه کنید، به عنوان مثال، زیرا اغلب بزرگ هستند و میتوانند به راحتی از فایلهای منبع بازسازی شوند. برای این پروژه ساده، نیازی به قالب .gitignore نداریم.
انتخاب مجوز در مرحله بعدی است. مجوز به توسعه دهندگان دیگر اجازه می دهد تا بدانند با کد موجود در مخزن شما چه کاری می توانند انجام دهند. به عنوان مثال، اینکه آیا آنها می توانند آزادانه از کد برای پروژه های خود استفاده کنند یا خیر.
GitHub یک وب سایت برای کمک به شما در تصمیم گیری ارائه می دهد. کلیک learn more
زیر Choose a license
گزینه ای برای رفتن به اسناد GitHub. در صفحه مستندات، یک را پیدا خواهید کرد choosealicense.com
پیوندی برای کمک در انتخاب مجوز برای پروژه شما.
برای مخزن دستور العمل هایم، مجوز را ساده و آسان می کنم و مجوز MIT را انتخاب می کنم.
برگه مرورگر اسناد را ببندید، به تب GitHub برگردید و مجوز مورد نظر را از لیست انتخاب کنید.
درست بالاتر از Create repository
را فشار دهید، GitHub یک خلاصه ارائه می دهد تا بتوانید عملکردی را که می خواهید انجام دهید دوباره بررسی کنید. سپس کلیک کنید Create repository
.
همانطور که در شکل 4 نشان داده شده است، مخزن را ایجاد می کند. خوب است!
همانطور که در شکل 4 می بینید، GitHub به طور خودکار اولین commit ما را انجام داد! این commit یک عکس فوری از دو فایلی است که به آن گفته بودیم به مخزن اضافه کند: فایل مجوز ما و readme. این یک پیام commit “تعهد اولیه” را تنظیم کرد. و به طور پیش فرض، GitHub محتوای فایل readme ما را نمایش می دهد.
در این مرحله، ما محلی مخزن شامل دو فایل متنی ما است. و ما از راه دور مخزن شامل لایسنس و فایل های readme ما است. ما می خواهیم این دو مخزن مطابقت داشته باشند.
چگونه به Git درباره GitHub بگوییم
قبل از اینکه بتوانید مخازن محلی و راه دور را همگام سازی کنید، باید بین آنها ارتباط برقرار کنید. اساساً باید به مخزن محلی خود بگویید که مخزن راه دور را کجا پیدا کند.
ما یک مخزن راه دور را با URL آن شناسایی می کنیم. در شکل 4 بالا، به رنگ سبز توجه کنید Code
دکمه. برای مشاهده جزئیات مربوط به مخزن روی آن دکمه کلیک کنید (شکل 5).
مطمئن شوید که تب HTTPS انتخاب شده است و روی آن کلیک کنید copy
برای کپی کردن URL برای این مخزن GitHub.
در پنجره فرمان در ماشین محلی خود، مخزن راه دور را به مخزن محلی اضافه کنید. سپس ریموت ها را فهرست کنید تا تأیید کنید که ریموت ساخته شده است.
git remote add recipes-gh https://github.com/DeborahK/recipes.git
git remote
را remote add
دستور مخزن راه دور را در URL ارائه شده اضافه می کند. و به شما امکان می دهد یک نام مستعار برای آن مخزن اختصاص دهید تا مجبور نباشید URL را هنگام مراجعه به مخزن راه دور تایپ کنید.
یک نام مستعار رایج برای مخزن راه دور است origin
، اما برخی آن نام را کمی گیج کننده می دانند، به خصوص اگر مخزن راه دور منشاء پروژه نباشد. در آن صورت، من گاهی از نام مخزن محلی با a استفاده می کنم -gh
(برای GitHub) به عنوان نام مستعار مخزن از راه دور، بنابراین من به راحتی می توانم آن را به خاطر بسپارم. اما با خیال راحت از هر نامی استفاده کنید.
را remote
دستور به خودی خود لیست ریموت هایی را که مخزن محلی شما درباره آنها می شناسد نمایش می دهد. در اینجا به نظر می رسد:
مخزن محلی Git ما اکنون می داند که مخزن راه دور مرتبط خود را کجا پیدا کند. مرحله بعدی همگام سازی مخازن است تا تاریخچه ارتکاب آنها مطابقت داشته باشد.
نحوه همگام سازی مخازن محلی و راه دور
برای همگام سازی مخازن محلی و راه دور، ابتدا تاریخچه تغییرات را از مخزن راه دور واکشی می کنیم و آن را در مخزن محلی خود با استفاده از pull
فرمان سپس تاریخچه تغییرات محلی خود را با استفاده از آن به مخزن راه دور فشار می دهیم push
فرمان
اگر ترجیح می دهید مخازن را با استفاده از VS Code همگام سازی کنید، این ویدیو را ببینید:
برای بیرون کشیدن از مخزن راه دور و ادغام به مخزن محلی خود با استفاده از دستور Git:
git pull recipes-gh main --allow-unrelated-histories
dir // On windows
OR
ls // On a mac
را pull
دستور به نام مستعار مخزن راه دور نیاز دارد (recipes-gh
) و نام شعبه. از آنجایی که ما هیچ شاخه اضافی ایجاد نکرده ایم، شاخه اولیه را مشخص می کنیم (main
).
را --allow-unrelated-histories
اولین باری که میکشیم، پرچم لازم است، زیرا میخواهیم دو مخزن را که جداگانه ایجاد شدهاند و در حال حاضر تاریخچه مرتبطی را به اشتراک نمیگذارند، ادغام کنیم.
بعد از اولین بار، git pull
دستور به آن پرچم نیاز ندارد:
git pull recipes-gh main
در هر دو صورت، pull
دستور با استفاده از نام مستعار ارائه شده URL مناسب را برای مخزن راه دور جستجو می کند ( recipes-gh
).
سپس تاریخچه commit و سایر داده ها را از شاخه مشخص شده واکشی می کند ( main
) از مخزن راه دور که در آن شاخه از مخزن محلی نیست.
این داده ها را در مخزن محلی ادغام می کند. اگر تداخلی وجود دارد، قبل از اینکه Git تغییرات را ادغام کند، باید آنها را به صورت دستی حل کنید.
در نهایت، پوشه کاری محلی را با تمام فایل های آخرین commit به روز می کند.
با استفاده از dir
دستور در ویندوز یا ls
با دستور روی مک، می بینیم که مخزن محلی ما اکنون فایل های اصلی ما را به اضافه مجوز و فایل های readme از مخزن راه دور ما دارد، همانطور که در شکل 7 نشان داده شده است.
اکنون مخزن محلی ما شامل تمام تاریخچه commit از مخزن راه دور است.
سپس، تاریخچه تغییرات را از مخزن محلی خود به مخزن راه دور با استفاده از push
فرمان
git push recipes-gh main
را push
دستور به نام مخزن راه دور نیاز دارد (recipes-gh
) و نام شعبه. از آنجایی که ما هیچ شاخه اضافی ایجاد نکرده ایم، شاخه اولیه را مشخص می کنیم (main
).
این دستور تاریخچه تغییرات محلی را با مخزن راه دور ادغام می کند. اگر تداخلی وجود دارد، قبل از اینکه Git تغییرات را ادغام کند، باید آنها را به صورت دستی حل کنید. برای نتیجه به شکل 8 مراجعه کنید:
برای تأیید اینکه مخزن راه دور ما شامل همه فایل های ما می شود، مخزن راه دور را در GitHub مشاهده کنید. در شکل 9، می بینیم که فایل های مخزن محلی ما اکنون در مخزن راه دور ما هستند و مخازن ما همگام هستند!
به طور خلاصه، همگام سازی مخازن محلی و راه دور شامل کشیدن هرگونه تغییر از مخزن راه دور به مخزن محلی شما، حل تضادها و سپس بازگرداندن تغییرات محلی شما به مخزن راه دور است.
برای سناریوی اول همین است. ما یک مخزن محلی از فایل های موجود خود ایجاد کردیم. سپس یک مخزن راه دور ایجاد کردیم، یک اتصال به آن مخزن راه دور راه اندازی کردیم و فایل های خود را همگام سازی کردیم. را تکرار کنید pull
و push
دستورات برای همگام سازی مخازن در حین کار بر روی پروژه خود.
سناریو 2: ابتدا از راه دور
برای سناریوی دوم ما، مخزن راه دور از قبل وجود دارد. اگر به تیمی بپیوندید که کدهای موجود در GitHub را دارد، این اتفاق خواهد افتاد. یا اگر می خواهید روی یک پروژه متن باز کار کنید. یا اگر کدی در GitHub پیدا کردید که میخواهید از آن به عنوان نقطه شروع پروژه خود استفاده کنید.
شما می خواهید مخزن محلی خود را از یک مخزن راه دور موجود ایجاد کنید. همانطور که در شکل 10 نشان داده شده است، سه راه اساسی برای دریافت کد از یک مخزن راه دور وجود دارد.
در سمت چپ شکل 10، ما یک سناریو داریم: اگر مالک یا حقوق دسترسی برای تغییر مخزن راه دور دارید، می توانید مخزن راه دور را برای ایجاد مخزن محلی خود شبیه سازی کنید. سپس می توانید مستقیماً تغییرات را بین دو مخزن همگام سازی کنید.
سناریوی دوم در وسط شکل 10 نشان داده شده است: اگر شما مالک مخزن راه دور نیستید یا حقوق دسترسی برای تغییر آن ندارید، از GitHub استفاده کنید تا چنگال ابتدا مخزن این یک کپی از مخزن راه دور در حساب GitHub شما ایجاد می کند. سپس کپی خود را برای ایجاد مخزن محلی خود کلون کنید.
اگر روی یک پروژه منبع باز کار می کنید یا می خواهید از کد موجود در مخزن شخص دیگری به عنوان نقطه شروع پروژه خود استفاده کنید، این اتفاق خواهد افتاد.
سناریوی سوم در سمت راست شکل 10 نشان داده شده است – همچنین گزینه ای برای دانلود فایل فشرده کد در مخزن وجود دارد. این کار را انجام می دهد نه یک مخزن محلی ایجاد کنید اگر میخواهید کد موجود در یک مخزن GitHub را مشاهده کنید، از این گزینه استفاده کنید، اما برای ردیابی تغییرات آن برنامهریزی نکنید.
برای راه اندازی برای مثال این سناریو، به یک مخزن راه دور نیاز دارید که در حال حاضر یک مخزن محلی مرتبط نداشته باشد. می توانید استفاده کنید recipes
مخزن از راه دور که قبلاً در سناریوی اول ایجاد کرده اید. اگر ترجیح می دهید از مخزن شخص دیگری برای این مثال استفاده کنید، ابتدا آن را فورک کنید.
هنگامی که یک مخزن راه دور دارید، مطمئن شوید که هیچ مخزن محلی مرتبط با آن وجود ندارد. اگر از recipes
مخزن از راه دور، حذف کنید recipes
پوشه از سیستم محلی شما که مخزن محلی شما را حذف می کند.
اکنون شما آماده ایجاد یک مخزن محلی جدید از مخزن راه دور خود در GitHub هستید.
نحوه کلون کردن یک مخزن
برای ایجاد یک مخزن محلی از یک مخزن راه دور در GitHub، از clone
فرمان
اگر ترجیح می دهید با استفاده از برنامه دسکتاپ GitHub یک مخزن را شبیه سازی کنید، این ویدیو را ببینید:
برای کلون کردن با استفاده از دستور Git، ابتدا به URL مخزن راه دور نیاز داریم.
به GitHub بروید، وارد شوید و داشبورد شخصی خود را مشاهده خواهید کرد. مخزنی را که می خواهید کلون کنید پیدا کنید. روی سبز کلیک کنید Code
برای مشاهده جزئیات مربوط به مخزن همانطور که قبلا در شکل 5 نشان داده شده است. روی دکمه کپی در کنار URL کلیک کنید تا آن را کپی کنید.
سپس، ترمینال یا خط فرمان خود را در رایانه خود باز کنید. به پوشه ای که می خواهید پوشه کاری پروژه را ایجاد کنید بروید. من به سمت من حرکت می کنم documents
پوشه
سپس ما آماده هستیم تا آن مخزن را شبیه سازی کنیم:
git clone https://github.com/DeborahK/recipes.git
را clone
دستور به URL مخزن راه دور نیاز دارد. ما فقط آن URL را از GitHub کپی کردیم، بنابراین آن را به عنوان بخشی از این دستور قرار دهید.
هنگامی که دستور اجرا می شود، ابتدا پوشه کاری را برای مخزن با استفاده از نام مخزن راه دور از URL ایجاد می کند. recipes
در این مثال سپس تاریخچه commit را از مخزن راه دور در URL ارائه شده کپی می کند.
فرآیند شبیه سازی همچنین به طور خودکار مخزن محلی جدید را با مخزن راه دور آن پیوند می دهد. و به مخزن راه دور یک نام مستعار می دهد origin
. سپس می توانیم با استفاده از آن نام مستعار به جای URL آن به مخزن راه دور ارجاع دهیم.
در نهایت، فرآیند شبیه سازی همه فایل ها را از آخرین commit به پوشه کاری محلی کپی می کند. سپس میتوانید فایلهای موجود در آن پوشه کاری را که به صورت محلی روی پروژه کار میکنید، اضافه، ویرایش یا حذف کنید.
به قسمت جدید بروید recipes
پوشه سپس از remote
دستور مشاهده مخزن از راه دور پیوند شده. و در شکل 11 نشان داده شده است که در واقع نام مستعار دارد origin
.
به خروجی عملیات کلون در شکل 11 توجه کنید. Git 10 شی را شمارش می کند (یا پیدا می کند). ما فقط چهار فایل در فایل داریم recipes
مخزن از راه دور پس چرا 10 شی پیدا می کند؟ دلیل آن این است که فرآیند کلون کل تاریخچه commit را کپی می کند، نه فقط فایل ها را.
استفاده کنید rev-list
فرمان با --objects
و --all
برای مشاهده لیست اشیاء پرچم گذاری کنید.
git rev-list --objects --all
شکل 12 خروجی این دستور را نشان می دهد:
هر یک از اشیاء فوق به عنوان SHA یا شناسه الگوریتم هش ایمن نشان داده می شود. SHA به عنوان یک شناسه برای شناسایی منحصر به فرد اشیاء موجود در مخزن ما استفاده می شود.
سه شیء اول در این لیست (اشیاء 1-3) سه تعهدی هستند که به این مخزن داده شده است. با نگاهی به لیست commit ها در GitHub (شکل 13)، هر commit چند کاراکتر اول SHA خود را نشان می دهد. اینها با سه شیء اول مطابقت دارند:
- زمانی که ما دو مخزن را ادغام کردیم، ادغام متعهد شد.
- را
initial commit
GitHub به مخزن راه دور ایجاد شده استLICENSE
وREADME.md
فایل ها. - را
initial commit
ما به مخزن محلی متعهد شدیمfile1.txt
وfile2.txt
.
اشیاء میانی در لیست نشان داده شده در شکل 12 (اشیاء 5-8) چهار فایل متعهد هستند.
سه شی باقی مانده (اشیاء 4، 9، 10) اشیاء درختی هستند. یک شی درختی نشان دهنده وضعیت یک پوشه، شامل فایل ها و پوشه های فرعی در آن پوشه است. سلسله مراتب پوشه را حفظ می کند.
با استفاده از dir
دستور در ویندوز یا ls
دستور در مک، می بینیم که پوشه کاری ما اکنون حاوی تمام فایل های مخزن راه دور ما است.
اکنون که مخزن را شبیه سازی کرده ایم، مخازن محلی و راه دور ما مطابقت دارند. برای همگام نگه داشتن آنها، استفاده می کنیم pull
و push
همانطور که قبلا در بخش “چگونه مخازن محلی و راه دور” را همگام سازی کنیم، قبلا در این مقاله دیدیم.
توجه داشته باشید که اگر با یک مخزن از راه دور کار می کنید که متعلق به شما نیست، ممکن است دسترسی نداشته باشید که تغییرات خود را مستقیماً به مخزن منتقل کنید. در عوض، باید a را صادر کنید درخواست کشش.
یک درخواست کشش یا PR به مالکان یا سایر مشارکتکنندگان میگوید که شما تغییرات را اعمال کردهاید و درخواست میکنید که این تغییرات بررسی و کشیده شوند یا در مخزن راه دور ادغام شوند.
برای اطلاعات بیشتر در مورد درخواست های کشش این ویدیو را ببینید:
بسته بندی
در سناریوی اول، ما کدهای موجود را داشتیم و یک مخزن محلی از آن کد ایجاد کردیم. سپس یک مخزن راه دور ایجاد کردیم تا یک کپی از فایل ها را خارج از سایت نگه داریم و پروژه را با دیگران به اشتراک بگذاریم.
در سناریوی دوم، ما یک مخزن راه دور موجود در GitHub توسط تیم ما یا یک مشارکت کننده منبع باز ایجاد کردیم. سپس آن مخزن را شبیه سازی کردیم تا مخزن محلی خود را ایجاد کنیم. به این ترتیب میتوانیم روی نسخهای از پروژه کار کنیم، و تغییرات را بهطور مستقل انجام داده و آزمایش کنیم، قبل از اینکه آن تغییرات را به مخزن راه دور فشار دهیم تا دیگران بررسی و ادغام شوند.
چه ابتدا مخزن محلی خود را ایجاد کنید، چه ابتدا مخزن راه دور GitHub خود را، پس از اینکه هر دو مخزن را در محل خود دارید، می توانید آنها را با Git همگام نگه دارید. pull
و push
دستورات یا با ارسال درخواست های کششی یا PR.
برای جزئیات بیشتر در مورد یادگیری Git و GitHub، این دوره را بررسی کنید:
هنگام کار بر روی کد خود، به دست آوردن درک دقیق از مخازن محلی و راه دور و نحوه هماهنگ نگه داشتن آنها ضروری است. وقتی روی یک پروژه تیمی یا متن باز کار می کنید، اهمیت بیشتری دارد.
منتشر شده در 1402-12-26 11:57:04