باشه ، اما … چه جهنمی است؟!؟

مقدمه
بنابراین ، شما اینجا هستید.
شما فقط اخیراً شروع به فرو بردن انگشتان پا به دنیای نرم افزار Dev کرده اید.
شما تاکنون از آن لذت می برید ، اما پیگیری هر به روزرسانی تکراری که در پروژه خود ایجاد می کنید تبدیل شده است دیوانه کننده خیلی سریعبشر
این یک کار کاری برای مدیریت دستی نسخه های مختلف اسکریپت ها و پرونده های شما است ، و تغییرات را پیگیری کنید شما با تکامل پروژه خود.
چاله های جهنمی
راه حلی که من هنگام شروع کار بیشتر از آن استفاده کردم این بود که به سادگی هر تکرار کد من را ذخیره کنید به عنوان یک پرونده جدید ، با آن تاریخ و زمان در نام پروندهبشر
سپس ، من پوشه حاوی را بر اساس “تاریخ اصلاح شده” مرتب می کنم تا آخرین دسته را پیدا کنم. برای هرکسی که قبلاً با Git آشنا باشد ، این به نظر می رسد Asinine.
این نوع چیزها خسته کننده و کاملاً خسته کننده شد بسیار سریع
این سیستم به جای اینکه به سادگی تغییراتی را ایجاد کنم ، من باعث شده است که نسخه ها و نسخه هایی از همان تعداد چند پرونده ایجاد کنم ، با تفاوت های جزئی بین آنها ، فقط با تاریخ و زمان آنها در نام پرونده مشخص شده است ، و اگر احساس می کردم نسبت به آینده خود به خصوص دلسوز هستم خود ، نظرات توضیح می دهد چه جهنم خونین بود که من واقعاً تغییر کردمبشر
علاوه بر این ، با رشد پروژه های من ، راه حل من این کار را نکرد. همانطور که شروع کردم به تمرکز روی HTML ، CSS و صفحات وب استاتیک ، این مدیریت تبدیل شد پیچیده تربشر من اکنون پرونده های تاریخ و زمانهای مختلف را بین سرورها و رایانه ها در حال دستگیری بودم و خدای ناکرده من می خواستم روی هر چیزی در مدرسه کار کنم.
به جایی رسید که من صادقانه فکر می کردم که آیا این چیزهای “توسعه” حتی برای من مناسب بوده است یا خیر.
آن وقت تصمیم گرفتمبشر من می خواستم گلوله را نیش بزنم و در مورد این همه فانتزی بیاموزمگودالچیزها این نمی تواند آنقدر پیچیده باشد … آیا می تواند؟
چرا باید از کنترل نسخه مناسب استفاده کنید
اگر شما مثل یک بار کار می کنید ، من همین حالا به شما می گویم ، وقت آن است که متوقف شودبشر بله ، جینین ، شما. تو هم جان من تو را آنجا می بینم میز شما آشفتگی است. تمیز کردن آنبشر
عدم وجود سیستم کنترل نسخه من اصطکاک بین من و پروژه های من نوعی “اینرسی” را معرفی کرد ، به موجب آن من چنین احساس کردم از نیاز به پیگیری سنگین است از پرونده های مختلف ، تکرارها و مواردی که من اغلب از آن جلوگیری می شد ایجاد تغییر یا به روزرسانی اصلاًبشر
ایجاد یک سیستم کنترل نسخه مناسب مانند GIT این مسئله را حل می کند ، و این کار را به زیبایی انجام می دهد.
به شما امکان می دهد کد بنویسید ، کد خود را تغییر دهید ، کد خود را تغییر دهید ، کد خود را پیچانده و اراده خود را بچرخانید به طور خودکار تغییراتی را که ایجاد می کنید ثبت کنید به هر پرونده ای به “تعهد” ، از آن نقطه git با لطف بقیه را کنترل می کندبشر
دوست داشتنی به نظر می رسد، اینطور نیست؟
نگرانی های مربوط به کنترل و مدیریت نسخه کم و بیش ناپدید می شود، به شما قدرت می دهد تمرکز خود را به جایی که باید بوده است تغییر دهید از همان ابتدا ؛ ساخت برنامه های Meme Crap نوشتن بهترین کدی که احتمالاً می توانیدبشر
مقدمه ای برای git
“خوب” من می شنوم که شما خواهش می کنید. “من خسته ام. من می خواهم تغییربشر من می خواهم آزاد شوم ، اما … این به چه معنی است؟!؟
شما در جای مناسببشر بیایید چربی را قطع کنیم. ما می توانیم از طریق این کار با هم کار کنیمبشر 🙂
در واقع GIT چیست؟
git یک است سیستم کنترل نسخهبشر
بوها سیستم کنترل نسخه پیگیری می کند تاریخچه پرونده ها، و تغییراتی که ما به آنها ایجاد می کنیم. در مورد ما ، این تمایل به ما است رمز!
بنابراین ، به سادگی ، سیستم های کنترل نسخه (مانند git) خودشان را حفظ کنیدسیاهه هااز آنچه ما تغییر در پرونده های ما، جایی که ما آنها را تغییر می دهیم ، و وقتی تغییرات را ایجاد می کنیم.
سیستم های کنترل نسخه ضبط تغییرات در یک پرونده یا مجموعه ای از پرونده ها با گذشت زمان، بنابراین ما می توانیم نسخه های خاص را بعداً به یاد بیاوریم (همانطور که در اینجا در https://git-scm.com/book/ms/v2/getting-started-about-version-control گفته شد).
repo git چیست؟
یک repo git فقط است پوشه پروژه شما (جایی که کد خود را قرار می دهید) ، اما با پوشه ویژه ، پنهان .git ' در داخل که پیگیری می کند تاریخ و تغییراتی را ایجاد می کنید.
این امر باعث می شود Git برای کارهای مشترک بسیار مفید باشد. شما و هم تیمی های خود یا همکاران خود می توانند “کلون” از repo خود داشته باشند ، و این همسالان می توانند در دستگاه های محلی خود تغییراتی ایجاد کنند. ارسال کردن تغییراتی را که ایجاد می کنند برگردانید!
آنها را برگردانید … به کجا؟
معمولاً به یک مرکزی ، بازپوی دور افتاده، میزبان چیزی مثل GitHub!
اگر در این وب سایت هستید ، احتمالاً از GitHub شنیده استبشر GitHub اساساً وب سایتی است که می توانید برای میزبانی این موارد استفاده کنید دور 'ربابرای پروژه های شما آنها می توانند یا باشند خصوصی یا عمومی برای دیدن همه!
وقتی تو 'کلون“یک repo از GitHub یا یک بستر مشابه ، شما اساساً هستید تهیه کپی از repo در رایانه شخصی شما. سپس ، شما تغییرات خود را در این نسخه انجام می دهید ، آنها را با یک GIT تصدیق می کنیدمتعهد شدن“، سپس تغییرات خود را فشار دهید بازگشت به مبدا، repo از راه دور (که از آن کپی خود را کلون کرده اید) در قالب این “تعهدات”.
بیایید مثالی برای واضح تر باشیم.
بیایید بگوییم من هستم ساختن یک وب سایت، درست است؟
کد پروژه من (صفحات ، دارایی ها ، اسکریپت ها ، همه چیز) همه در سرورهای Github ، در داخل پروژه من ذخیره می شوند.دور'repo
در رایانه من ، من جلوتر رفته ام و 'کلوناین repo ؛ من محتویات و تاریخ آن را کپی کرده ام ، بنابراین می توانم تغییراتی در آنها ایجاد کنم.
بعد ، پس از اتمام کار ، می توانممتعهد شدن“تغییرات من (نوع مانند بسته بندی آنها در یک جعبه و امضای آن با نام من) ، و”فشارتغییرات من به repo از راه دور بازگشت!
در صورت وجود هرگونه تغییر (تعهدات) در repo از راه دور اتفاق می افتد در کلون محلی من حضور ندارند، من می توانم 'کشیدناین تغییرات در دستگاه محلی من برای آوردن آن به روز با repo از راه دور
GIT یک سیستم کنترل نسخه “توزیع شده” است. این معنی چیست؟!؟
Git ، به جای برخی از سیستم های کنترل نسخه دیگر ، به جای “متمرکز” توزیع می شود.
این اساساً به این معنی است که GIT به سرور مرکزی اعتماد نمی کند به عنوان یک خانه “استاد” برای تاریخچه کد شما.
بر خلاف اکثر سیستم های “متمرکز” ، GIT یک نسخه محلی از Repo ، History و All پروژه شما را با توانایی های سابقه و ردیابی نسخه (https://en.wikipedia.org/wiki/git) حفظ می کند ، و این کار را به صورت محلی انجام می دهد ماشین ، صرف نظر از هر کجا که ممکن است repo وجود داشته باشد.
نه repo خود ، محلی یا repo از راه دور که به میزبانی Github ، یک repo “استاد” نیست. آنها هر دو در برابری و برابری هستند ، تا آنجا که به Git مربوط می شود.
تاریخ شما فقط با میزبان مانند GitHub ذخیره نمی شود. این است در سیستم خود نیز ذخیره شده استبشر سپس ، هنگامی که شما تمام شد و تغییرات خود را انجام دادید (که می توانید بدون اینترنت درست کنید!) ، شما آنها را به سمت repo از راه دور در Github فشار می دهید ، و تغییرات بر این اساس در آنجا انجام می شود! شسته و رفته ، ها؟
git و github یک چیز نیستند
این دو هیچ وابستگی به توسعه ندارند. آنها توسط همان افراد ساخته نشده و نگهداری نمی شوند.
GitHub فقط یک وب سایت است که در آن افراد برای پروژه های خود بازپرداختهای از راه دور را حفظ می کنند. GitHub به نام Git نامگذاری شده است ، اما می تواند خیلی بیشتر از این مدیریت کند: “مسائل” یک پروژه ، چیزهای فانتزی به نام “درخواست های کشش” و انواع دیگر ویژگی های ذهن آزار دهنده که احتمالاً ما نمی خواهیم به اینجا برسیم.
Github در سال 2018 توسط مایکروسافت به دست آمد. به همان اندازه که این موضوع را ناراحت می کند با توجه به تحقیر بسیاری از تلاش های مایکروسافت ، من امروز به Gitlab شلیک کردم و من واقعاً تجربه کاربر Github را ترجیح می دهم ، هرچند که بسیاری از آنها توسط Gitlab سوگند می خورند ، و من احمق هستم.
این مهم است که به خاطر داشته باشید که Git مستقل از Github است و Github تنها بازیکن شهر نیست.
اگر احساس تمایل داشتید ، فقط می توانید یک مخزن محلی GIT بدون هیچ گونه راه دور برای تغییراتی که به آن سوق داده می شود ، داشته باشید ، اما در این راهنما ، شما را از طریق مراحل پیاده روی می کنم تا با اولین repo از راه دور خود در GitHub شروع کنید.
شروع
برای شروع ، به یک حساب GitHubبشر بله ، بله ، یک حساب دیگر ، اما این مهم است ، قول!
به GitHub.com بروید ، جایی که اگر در سن افسرده کننده ، مولد-آبهای من هستید ، با صفحه نمایش مانند این به شما ارائه می شود.
مسلماً ، من فکر می کنم این گرافیک کاملاً زیبا است ، با فرض اینکه توسط ارگانیسم های واقعی و بیان با ظرفیت عاطفی ساخته شده است.
“ثبت نام” در گوشه بالا سمت راست، و شما را به یک صفحه نمایش منتقل می کنید که می توانید اطلاعات شخصی خود را به شرکت چند میلیارد دلاری دیگر بدهید.
ایجاد یک حساب GitHub
سپس ایمیل خود را در قسمت “ایمیل” پرتاب کنید یک رمزعبور ایمن را انتخاب کنید که طی ده دقیقه فراموش نخواهید کرد.
هنگامی که در مورد این واقعیت که در مورد دوازدهمین بار در این ماه ایمیل خود را به یک شرکت دیگر می دهید ، در مورد این واقعیت فکر کنید ، می توانید در مورد آمدن با یک فکر کنید نام کاربری شما متنفر نخواهید شد
در حالی که فرصتی وجود دارد که بعداً ممکن است عواقب تغییر نام کاربری شما وجود داشته باشد ، این است امکان تغییر آن در خط، بنابراین نیازی به نگرانی زیاد نیست. فقط سعی کنید در مورد آن احمق نباشید ، خوب؟
سپس ، مطمئناً می توانید شرایط خدمات GitHub را بخوانید ، که احتمالاً موافقت می کنید که قطعاً در ایجاد یک حساب با آنها درک کرده اید. پس از اتمام کار شما و وکیل خیالی ، می توانید ضربه بزنید ادامه دادنبشر
اگر شما یک سود بدشانس هستید ، و روز شما حتی بیشتر توسط برخی از جکهای که در تاریخ شانزدهم مارس 2015 با نام شما ثبت نام کرده اند ، خراب شده است (فقط برای اینکه یک سهم را در همان روز انجام دهید و سپس ترک کنید) ممکن است مجبور شوید بداهه نوازی کنید.
در شاید ریاکارانه ترین پیچ و تاب من در اینترنت ، ما اکنون وظیفه داریم ثابت می کند که ما یک ربات نیستیمبشر
نسبتاً مورد علاقه ، شما ممکن است یک “دریافت کنید”کد راه اندازی GitHubایمیل برای تأیید آدرس ایمیل خود.
پس از اتمام این کار ، می توانید به حساب تازه ایجاد شده خود وارد شوید!
شما بلافاصله به این کار ریخته می شوید داشبورد:
این اساساً صفحه اصلی GitHub شماست. خوش آمدید!
ایجاد یک مخزن جدید
دکمه را بزنید تا یک مخزن جدید ایجاد کنید در صفحه سمت چپ.
به آن بده معقولبا نام بالغ مانند عضو رشد یافته و عملکردی جامعه شما.
شما همچنین می توانید repo خود را ارائه دهید شرح تقریباً قابل احترام است.
پس از اتمام کار گزینه ها به دلخواه خود (مانند دید عمومی) ، می توانید روی Big Green کلیک کنیدمخزن ایجاد کنیددکمه!
سپس ، مخزن شما به زندگی می رسد!
در واقع تعامل با (قرار دادن پرونده ها) repo جدید GitHub خود
GitHub با کمک “اگر قبلاً این نوع کارها را انجام داده اید” دستورالعمل هایی را ارائه می دهد. اگر قبلاً “این نوع کارها را انجام نداده اید” ، اخم نکنید. من شما را از طریق آن قدم می زنم
بنابراین ، کاری که شما انجام داده اید این است یک مخزن از راه دور ساخته شده استبشر خنک اما اکنون باید کد خود را به آن فشار دهید.
این یک دسته از دستورات را برای انجام این کار به ما نشان می دهد. اگر نمی خواهیم ، نیازی به زحمت ما نیست. در عوض ، ما می توانیم برنامه ای به نام نصب کنیم دسک تاپبشر
تنظیم دسک تاپ GitHub
این همه چیزهای خسته کننده را برای ما انجام می دهد. آن را نصب کنید (https://desktop.github.com/download) و با همان حساب GitHub وارد شوید.
اگر در حال نوشتن کد هستید ، به توانایی شما در نصب یک برنامه دسک تاپ ساده اعتماد دارم.
کلون کردن repo از راه دور ما بر روی دستگاه محلی ما
پس از اتمام و در حال اجرا با برنامه ، با “بیایید شروع کنیم!” صفحه چلپ چلوپ ، که از آن می توانید این دکمه “کلون یک مخزن را از اینترنت …” انتخاب کنید.
بله ، ما کار را انجام می دهیم!
اگر به همان حساب GitHub که به مخزن تازه ایجاد شده شما دسترسی دارد ، وارد سیستم شوید ، باید در لیست ظاهر شود. آن را انتخاب کنید ، سپس فشار دهید کلونبشر
پس از اتمام این کار (با توجه به این واقعیت که repo شما عملاً خالی است) باید مدت زیادی طول بکشد ، باید با یک صفحه نمایش مانند این ارائه شود:
دسک تاپ GitHub “بدون تغییر محلی” صفحه نمایش شروع برای repo تازه کلون شده](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/5xp9dplhlfugmh5yx3rn.png)
ضربهمبداءدر بالا این اساساً بررسی می کند تا اطمینان حاصل شود که کلون شما (repo محلی) به روز با مبدا (repo از راه دور در GitHub) به روز است.
اکنون ، به طور پیش فرض ، برنامه دسک تاپ GitHub شما repo شما را در داخل خود کلون کرده است اسناد پوشه (معمولاً در داخل اسناد/لوب/{نام repo شما})
اضافه کردن کد خود به نسخه محلی repo
قدم بعدی واقعاً مشکل است ، اما من به شما اعتقاد دارم. شما اکنون باید محتوای پروژه خود را در این پوشه بکشید و رها کنیدبشر
پروژه من دو پرونده دارد: index.html برای صفحه اصلی من ، و ebb & flowedmo.frshبشر
می بینید که ، وقتی آنها را به پوشه repo کلون شده خود اضافه می کنم ، آنها در داخل دسک تاپ GitHub ظاهر می شوند ، بنابراین وقتی من repo را انتخاب کردم:
آنها یک به علاوه (+) در کنار آنها امضا کنید زیرا شما اضافه شده آنها نبوغبشر
اگر یک پرونده را تغییر داده اید ، این یک نماد زرد خواهد بود.
انتخاب هر یک از پرونده هایی که برنامه دسک تاپ GitHub به عنوان “تغییر یافته” تصدیق کرده است ، تفاوت ها (تغییرات!) را به شما نشان می دهد.
اولین تعهد خود را (مرتکب تغییرات خود)
هنگامی که تمام کد شما در پوشه repo کلون شده شما قرار دارد ، می توانید اولین “متعهد” خود را انجام دهید! این اساساً همه تغییرات را به هم وصل می کند و آنها را درون یک جعبه کوچک قرار می دهد تا به ریموت خود فشار بیاورد.
این جعبه دارای برچسب روی آن است و این حرف را می زند شما کسی بودید که تغییرات را ایجاد کردیدبشر
ما می توانیم این را به خاطر بسپاریم که دفعه بعد که کد اسپاگتی CRAP را به یک پروژه عمومی کمک می کنیم.
به خود مرتکب واقعاً بدهید خلاقبا پرمافک نام (خلاصه) در جعبه در گوشه سمت چپ پایین.
همانطور که مشاهده می کنید ، معدن با اصالت در حال چکه است.
ما واقعاً نیازی به اضافه کردن توضیحی در اینجا نداریم ، اما اگر احساس می کنید حتی بیشتر از یک اسب شاخدار منحصر به فرد از حد معمول احساس می کنید. ادامه انجامش من جرات می کنم ، جورجینابشر
ضربهمتعهد به اصلی'.
“اصلی” نام “شاخه” است که ما تغییرات خود را به آن سوق می دهیم ، اما این خیلی زود است ، بنابراین ما هنوز به شاخه ها نمی پردازیم.
فشار دادن تغییرات ما به ریموت منشأ
وت آنجا ما آن را داریم! اولین تعهد شما انجام شده است! ما اکنون می توانیم ضربه بزنیممبداءبرای فشار آوردن تغییرات ما به repo از راه دور ما در GitHub!
اگر همه چیز خوب پیش برود ، باید ببینیم کد شما در داخل repo github ما قبلاً ایجاد کردیم در مرورگر ما!
پایان
وت این است! اینها هستند اصول اساسی ، اساسی Git و GitHub، به طور خلاصه!
اکنون ، هر زمان که تغییرات خود را انجام دهید ، به جای اینکه نیاز به تهیه نسخه جدیدی از پرونده یا پروژه خود داشته باشید ، فقط می توانید تعهد کنید ، آنچه را که تغییر داده اید یا به روز کرده اید خلاصه کنید ، و پس از اتمام ساخت یک ویژگی جدید یا با خرد کردن یک اشکال ، آن را به سمت repo از راه دور فشار دهید! چقدر جالب است؟!؟
امیدوارم که شما از این چیزی یاد گرفته باشید ، و یا حداقل یک ضربه از آن بیرون بیاورید. امیدوارم بتوانم در این زمینه به کسی کمک کنم. 🙂
Github یک بستر گسترده از عملکردهای بسیار و بسیاری از پروژه های عالی است ، و من شما را بسیار تشویق می کنم که به اطراف خود بپردازید. :>
ممنون
COPYLEFT سازمان Oreohive | در تاریخ اول فوریه 2025 به dev.to نوشته و منتشر شده است | این کار تحت CC BY-NC-SA 4.0 | ویژگی ها لازم است!