تعداد سرسام آور پروژه های نرم افزاری برای کنترل نسخه به Git متکی هستند ، از جمله پروژه های تجاری و همچنین منبع باز.
سیستم کنترل: می توان از Git برای ذخیره محتوا استفاده کرد ، بیشتر به دلیل ویژگی های دیگری که ارائه می دهد برای ذخیره کد استفاده می شود.
سیستم کنترل نسخه: کدی که در Git ذخیره شده است با افزودن کد بیشتر تغییر می کند. همچنین ، بسیاری از توسعه دهندگان می توانند کد را به طور موازی اضافه کنند. بنابراین سیستم کنترل نسخه با حفظ سابقه ی آنچه که تغییر کرده است در مدیریت این امر کمک می کند. همچنین ، Git ویژگی هایی مانند شاخه ها (branches) و ادغام ها (merges) را ارائه می دهد که بعداً به آنها می پردازم.
سیستم کنترل نسخه توزیع شده: Git یک مخزن از راه دور دارد که در یک سرور و یک مخزن محلی دارد که در کامپیوتر هر توسعه دهنده ذخیره می شود. این بدان معنی است که کد فقط در یک سرور مرکزی ذخیره نمی شود ، بلکه کپی کامل آن در رایانه ی برنامه نویسان نیز وجود دارد. Git یک سیستم کنترل نسخه توزیع شده است زیرا این کد در رایانه هر برنامه نویس وجود دارد. بعداً در این مقاله مفهوم مخازن محلی و از راه دور را توضیح خواهم داد.
بر پروژه های واقعی عموماً چندین توسعه دهنده به طور موازی کار می کنند. بنابراین یک سیستم کنترل نسخه مانند Git برای اطمینان از عدم تداخل کدها بین توسعه دهندگان مورد نیاز است.
علاوه بر این ، الزامات در چنین پروژه هایی اغلب تغییر می کند. بنابراین یک سیستم کنترل نسخه به توسعه دهندگان این امکان را می دهد تا نسخه قدیمی کد را برگردانند و به آن بازگردند.
گاهی اوقات چندین پروژه که به طور موازی در حال اجرا هستند ، همان کد کد را شامل می شوند. در چنین حالتی ، مفهوم انشعاب در Git بسیار مهم است.
برای شروع ابتدا از طریق لینک زیر شروع به دانلود Git کنید
پس از باریگیری و نصب با استفاده از دستور زیر در خط فرمان(Command prompt) ، بررسی کنید که Git نصب شده است یا خیر:
git --version
در رایانه ی خود ، پوشه ای برای پروژه خود ایجاد کنید. برای مثال اسم پوشه simple-git-demo بگذاریم
وارد پوشه پروژه خود شوید و با استفاده از دستورات زیر یک مخزن محلی Git به پروژه اضافه کنید:
cd simple-git-demo
git init
دستور git init یک مخزن محلی Git به پروژه اضافه می کند.
در پوشه پروژه فایلی به نام demo.txt ایجاد کنید و متن زیر را به آن اضافه کنید:
Initial Content
مرحله بندی و commit کردن کدها
commit فرآیندی است که در آن کد به مخزن محلی اضافه می شود. قبل از commit کردن کدها ، این کد باید اصطلاحا مرحله بندی یا staging شوند.
برای مرحله بندی فایل از دستور زیر استفاده کنید:
git add demo.txt
در صورتی که بخواهید همزامان چند فایل را اضافه کنید کافی است به روش زیر عمل نمایید
اگر می خواهید تمام پرونده های داخل پوشه پروژه خود را به منطقه staging اضافه کنید ، از دستور زیر استفاده کنید:
git add .
از این با دقت استفاده کنید زیرا تمام پرونده ها و پوشه های پروژه شما را به منطقه staging اضافه می کند.
برای commit کردن یک فایل می توانید از دستور زیر استفاده کنید
"git commit -m "Initial Commit
“Initial Commit” پیام اولین Commit شماست تا مشخص باشد زمانی که این commit را انحام داده اید چه تغییراتی صورت گرفته است.
اکنون فایل demo.txt را اصلاح کرده ودرون آن متن زیر را اضافه کنید:
Initial Content Adding more Content
از وضعیت git برای یافتن اطلاعات مربوط به اینکه چه پرونده هایی اصلاح می شوند و چه پرونده هایی در منطقه staging وجود دارد استفاده کنید.
برای دیدن وضعیت از دستور زیر استفاده کنید:
git status
وضعیت نشان می دهد که demo.txt اصلاح شده (modify) است و هنوز در منطقه staging قرار ندارد.
حالا بیایید demo.txt را به منطقه staging اضافه کنیم و آن را با استفاده از دستورات زیر انجام دهیم:
"git add demo.txt git commit -m "demo.txt file is modified
برای چاپ تمام تعهداتی که تاکنون انجام نشده اند ، از git log استفاده کنید.
دستوری که برای این کار استفاده می شود:
این دستور گزارش نویسنده هر commit ، تاریخ commit و پیام commit را نشان می دهد.
تاکنون ما هیچ شاخهای (branch) در Git ایجاد نکرده ایم. به طور پیش فرض ، commit های Git وارد شاخه اصلی می شوند.
شاخه چیزی نیست جز اشاره گر آخرین commit در مخزن Git. بنابراین در حال حاضر شاخه اصلی ما نشانگر دومین فایل “demo.txt file is modified” است.
چندین شعبه برای پشتیبانی از تحولات موازی متعدد مورد نیاز است. برای دیدن نحوه کار شاخه ها به تصویر زیر مراجعه کنید.
در ابتدا ، commit1 و commit 2 در شاخه اصلی (master) انجام شده اند. پس از commit2 ، شاخه ی جدیدی به نام “Test” ایجاد می شود و commit3 و commit4 به شاخه ،Test اضافه می شوند.
در همان زمان ، یک مرتبه commit3 و commit 4 متفاوت با commit3 و commit4 قبلی به شاخه اصلی (master) اضافه می شوند. در اینجا می بینیم که پس از commit 2 ، دو پیشرفت موازی در 2 شاخه جداگانه انجام می شود.
شاخه test و master در اینجا متفاوت بوده و کد متفاوتی دارند.
اگر بخواهیم یک شاخه جدید ایجاد کنیم و نام آنا را Test بگذاریم ، تنها کافی است به روش زیر عمل کنیم:
git branch test
ولی ما هنوز در متن شاخه اصلی هستیم. به منظور تغییر شاخه به شاخه ی Test از دستور زیر استفاده کنید:
git checkout test
اکنون در شاخه تست هستیم
با استفاده از دستور زیر می توانید تمام شاخه های محلی(local) را لیست کنید:
git branch
با افزودن متن زیر فایل demo.txt را اصلاح کنید:
Initial Content Adding more Content Adding some Content from test Branch
برای ایجاد stage جدید و همینطور commit جدید کافی است دستور زیر را انجام دهید
"git add demo.txt git commit -m "Test Branch Commit
این commit در شاخه test انجام شد و اکنون شاخه test با 1 مرتبه از Master Branch پیشی گرفته است - زیرا شاخه test شامل 2 commit از شاخه اصلی نیز می باشد.
با استفاده از کد زیر می توانید تاریخچه ی شاخه ی test را مشاهده کنید
git log
در حال حاضر ، شاخه test با 1 commit از شاخه master پیشی گرفته است. بگذارید بگوییم که اکنون ما می خواهیم همه کدهای موجود در شاخه test به شاخه ی Master برگردانده شود. اینجاست که ادغام git بسیار مفید است.
برای ادغام کد از شاخه test در شاخه master ، این مراحل را دنبال کنید:
ابتدا به شاخه master برگردید:
git checkout master
سپس دستور ادغام را به صورت زیر انجام دهید
git merge test
پس از اجرای این 2 دستور ، ادغام باید موفقیت آمیز باشد. در این مثال هیچ تداخلی وجود ندارد.
اما در پروژه های واقعی ، هنگام ادغام تداخل وجود خواهد داشت. حل تعارض امری است که با تجربه به دست می آید ، بنابراین هرچه بیشتر با Git کار کنید می توانید حل تداخل ها را هم بهتر حل کنید.
اکنون git log را اجرا کنید و متوجه خواهید شد که master دارای 3 تا commit است.
تاکنون ، ما فقط در مخزن محلی کار می کردیم. هر توسعه دهنده در مخزن محلی خود کار خواهد کرد اما در نهایت ، کد را به یک مخزن از راه دور هدایت می کند. هنگامی که کد در مخزن از راه دور قرار گرفت ، سایر توسعه دهندگان می توانند آن کد را مشاهده و اصلاح کنند.
در اینجا ما از GitHub برای مخزن از راه دور استفاده خواهیم کرد.
به وبسایت گیت هاب بروید و یک اکانت برای خود بسازید
پس از ثبت نام در صفحه اصلی GitHub ، بر روی Start a Project کلیک کنید تا مخزن جدید Git ایجاد شود. به مخزن یک نام بدهید و روی "ایجاد مخزن" کلیک کنید.
اسم مخزن را git-blog-demo بگذارید.
با این کار یک مخزن از راه دور در GitHub ایجاد می شود و هنگامی که مخزن را باز می کنید ، صفحه ای مانند تصویر زیر باز می شود:
URL مخزن ایجاد شده به شکل https://github.com/نام کاربری شما/git-blog-demo.git خواهد بود.
برای اینکه مخزن محلی خود را به مخزن از راه دور هدایت کنید ، از دستور زیر استفاده کنید:
git remote add origin [repository url]
با کمک push همه ی کد ها از مخزن محلی به مخزن از راه دور انتقال دهید ، برای اینکار می توانید از دستور زیر استفاده کنید:
git push -u origin master
این کد کد شما را از شاخه ی master در محیط local به شاخه ی master در مخزن ایجاد شده بر روی گیت ها انتقال می دهد.
git pull برای کشیدن آخرین تغییرات از مخزن از راه دور به مخزن محلی استفاده می شود. کد مخزن از راه دور توسط توسعه دهندگان مختلف به طور مداوم به روز می شود ، بنابراین git pull قبل از شروع به کار ضروری است:
git pull origin master
git clone برای شبیه سازی مخزن از راه دور بر روی رایانه شما استفاده می شود. دستور آن بهاین شکل است:
git clone [repository url]
اتمام کار
اکنون مشا مباحث مقدماتی کار با Git را آموختید و میتوانید بیش تر کار کنید و چیزهای بیش تری بیاموزید.
توی این مقاله می خوایم چند سایت مفید برای توسعه دهندگان معرفی کنیم.
فاطمه روانبخش 3,158 بیشتر بخوانیدتوی این مقاله می خوایم از نحوه ی یادگیری برنامه نویسی برای تازه کارا بگیم.
فاطمه روانبخش 2,996 بیشتر بخوانیدتوی این مقاله می خوایم از کاربردهای مختلف جاوا اسکریپت بگیم.
فاطمه روانبخش 1,544 بیشتر بخوانید