Git. شروع سریع برای استفاده از عملیات پایه همراه با توضیحات. مقدمه ای مفصل برای شروع کار با Git Git

طبیعی است که مردم در مقابل تغییر مقاومت کنند. اگر زمانی که برای اولین بار با سیستم های کنترل نسخه شروع به کار کردید با Git آشنا نشدید، احتمالاً با Subversion (SVN) احساس راحتی بیشتری می کنید.

مردم اغلب می گویند که Git برای مبتدیان بسیار دشوار است. با این حال، من خواهش می کنم در این مورد اختلاف نظر داشته باشم.

در این آموزش به شما نشان خواهم داد که چگونه از Git در پروژه های خود استفاده کنید. فرض کنید در حال ساخت یک پروژه از ابتدا هستید و می خواهید آن را با استفاده از Git مدیریت کنید. قدم زدن در لیست دستورات اساسی به شما ایده می دهد که چگونه با استفاده از GitHub کد خود را در فضای ابری میزبانی کنید.

در این مقاله، ما در مورد اصول اولیه Git صحبت خواهیم کرد - چگونه پروژه های خود را مقداردهی اولیه کنیم، چگونه فایل های جدید و موجود را مدیریت کنیم، و چگونه کد خود را در فضای ابری ذخیره کنیم.

از آنجایی که این آموزش برای مبتدیان در نظر گرفته شده است، به بخش‌های نسبتاً پیچیده Git مانند شاخه‌بندی نمی‌پردازیم.

نصب Git

در وب سایت رسمی Git وجود دارد اطلاعات دقیقدر مورد نصب آن بر روی لینوکس، مک و ویندوز. در مورد ما، ما از اوبونتو 13.04 برای اهداف نمایشی استفاده خواهیم کرد، جایی که Git را با استفاده از apt-get نصب خواهیم کرد:

sudo apt-get install git

راه اندازی اولیه

بیایید یک دایرکتوری ایجاد کنیم که در آن کار خواهیم کرد. از طرف دیگر، می توانید از Git برای مدیریت یکی از پروژه های موجود خود استفاده کنید. در این صورت نیازی به ایجاد دایرکتوری دمو مانند زیر نخواهید داشت:

mkdir my_git_project سی دی my_git_project

اولین قدم این است که Git را در دایرکتوری مقداردهی کنید. این را می توان با استفاده از دستور init انجام داد که یک دایرکتوری git. حاوی تمام اطلاعات مربوط به Git برای پروژه شما ایجاد می کند.

git config --global user.name "Shaumik" git config --global user.email " [ایمیل محافظت شده]" git config --global color.ui "auto"

توجه به این نکته ضروری است که اگر نام و آدرس خود را ارائه نکنید پست الکترونیک، سپس از مقادیر پیش فرض استفاده می شود. در مورد ما، مقادیر پیش فرض نام کاربری donny و آدرس ایمیل donny@ubuntu خواهد بود.

علاوه بر این، رنگ را تنظیم می کنیم رابط کاربریروی auto تنظیم کنید، که باعث می شود خروجی دستورات Git کد رنگی شود.

پیشوند --global قبل از دستورات این است که دفعه بعد که پروژه Git را روی سیستم خود اجرا می کنیم مجبور به وارد کردن این دستورات پیکربندی نباشیم.

آماده سازی فایل ها برای commit

مرحله بعدی ایجاد فایل ها در دایرکتوری است. می توانید برای مثال استفاده کنید ویرایشگر متن Vim. توجه داشته باشید که اگر می خواهید Git را به یک قبلا اضافه کنید دایرکتوری موجود، لازم نیست این مرحله را انجام دهید:

وضعیت مخزن را بررسی کنید

اکنون که چند فایل در مخزن خود داریم، بیایید نگاهی به نحوه مدیریت Git بیندازیم. برای بررسی وضعیت فعلی مخزن، باید از دستور git status استفاده کنید:

افزودن فایل‌ها به Git برای ردیابی

بر این لحظهما فایلی برای ردیابی با Git نداریم. ما باید فایل ها را به طور خاص به Git اضافه کنیم تا به Git بگوییم چه چیزی را ردیابی کند.

با استفاده از دستور add فایل ها را اضافه کنید:

با بررسی مجدد وضعیت مخزن، می بینیم که یک فایل اضافه شده است:

برای افزودن چندین فایل، می‌توانید از دستور زیر استفاده کنید (توجه داشته باشید که یک فایل دیگر را برای اهداف نمایشی اضافه کردیم):

git add myfile2 myfile3

می توانید از git add به صورت بازگشتی استفاده کنید، اما مراقب این دستور باشید. فایل های خاصی (مانند فایل های کامپایل شده) وجود دارند که معمولاً خارج از یک مخزن Git ذخیره می شوند.

اگر از دستور add به صورت بازگشتی استفاده کنید، تمام این فایل ها را در صورت وجود در مخزن شما اضافه می کند.

حذف فایل ها

اما اجرای یک دستور ساده git rm نه تنها فایل را از Git، بلکه از محلی شما نیز حذف می کند سیستم فایل! به

Git ردیابی فایل را متوقف کرده است، اما در شما سیستم محلیخود فایل ذخیره شده است، دستور زیر را اجرا کنید:

git rm -- ذخیره شده در حافظه پنهان

تغییرات را متعهد شوید

هنگامی که فایل های خود را میزبانی کردید، می توانید آنها را به Git متعهد کنید. یک تعهد را به عنوان یک اثر در نظر بگیرید نقطه معین، که در این مرحله می توانید برای دسترسی به مخزن خود به آن بازگردید.

می توانید به هر commit یک پیام پیوست کنید که با استفاده از پیشوند -m اضافه می شود:

git commit -m "اولین کامیت من"

به تعهدات خود پیام های مفیدی بدهید زیرا این به شما کمک می کند تا آنچه را که در آن commit تغییر داده اید شناسایی کنید.

از پیام‌های بیش از حد عمومی مانند " اجتناب کنید اشکالات رفع شد" اگر یک ردیاب وظیفه دارید، می توانید پیام هایی مانند " رفع اشکال #234».

استفاده از نام شعبه یا نام ویژگی به عنوان پیشوند پیام commit تمرین خوبی است. مثلا، " مدیریت دارایی: عملکرد اضافه شده برای تولید فایل های PDFدارایی های” یک پیام معنادار است.

Git با افزودن یک عدد هگزادسیمال طولانی به هر commit، commit ها را شناسایی می کند. به عنوان یک قاعده، شما نیازی به کپی کردن کل خط ندارید، 5-6 کاراکتر اول برای شناسایی commit شما کافی است.

توجه داشته باشید که در اسکرین شات اولین کامیت ما با کد 8dd76fc تعریف شده است.

بیشتر متعهد می شود

حالا اجازه دهید پس از اولین commit چند فایل را تغییر دهیم. پس از تغییر آن ها، خواهیم دید که در نتیجه اجرای دستور git status، Git تغییراتی را در فایل هایی که نظارت می کند شناسایی کرده است:

با استفاده از دستور git diff می‌توانید تغییرات فایل‌های ردیابی‌شده را که در آخرین commit ایجاد شده‌اند بررسی کنید. اگر می خواهید تغییرات یک فایل خاص را مشاهده کنید، از دستور git diff استفاده کنید :

شما باید این فایل ها را دوباره اضافه کنید تا برای commit بعدی تغییراتی در فایل های ردیابی شده ایجاد کنید. با اجرای دستور زیر می توانید تمام فایل های ردیابی شده را اضافه کنید:

شما می توانید با استفاده از پیشوند -a دستور git commit که تمام تغییرات را به فایل های ردیابی شده اضافه می کند، از استفاده از این دستور اجتناب کنید.

با این حال، این فرآیند بسیار خطرناک است زیرا می تواند به پروژه آسیب برساند. برای مثال، فرض کنید یک فایل را باز کرده اید و اشتباهاً آن را تغییر داده اید.

اگر فایل ها را به صورت انتخابی قرار دهید، متوجه تغییراتی در هر فایل خواهید شد. اما اگر پیشوند -a را به commit خود اضافه کنید، همه فایل ها متعهد می شوند و نمی توانید خطاهای احتمالی را تشخیص دهید.

هنگامی که فایل های خود را قرار دادید، می توانید شروع به commit کنید. اشاره کردم که هر commit می تواند یک پیام مرتبط با خود داشته باشد که با استفاده از پیشوند -m آن را وارد می کنیم.

با این حال، می توان با استفاده از دستور git commit یک پیام را در چندین خط وارد کرد که یک فرم نوشتاری تعاملی را باز می کند:

مدیریت پروژه

برای مشاهده تاریخچه پروژه خود می توانید دستور زیر را اجرا کنید:

این کل تاریخچه پروژه را نشان می دهد که لیستی از تمام تعهدات و اطلاعات مربوط به آنها است. اطلاعات commit شامل هش commit، نویسنده، زمان و پیام commit است. گزینه های مختلفی برای git log وجود دارد که پس از تسلط بر مفهوم شاخه در Git می توانید آنها را بررسی کنید.

برای مشاهده اطلاعات دقیقدر مورد یک commit خاص و فایل هایی که تغییر کرده اند، دستور زیر را اجرا کنید:

git show

جایی که این عدد هگزادسیمال مرتبط با commit است. از آنجایی که هدف این آموزش مبتدیان است، نحوه بازگشت به وضعیت یک commit خاص یا نحوه مدیریت شاخه ها را پوشش نمی دهیم.

کد میزبانی در فضای ابری

اکنون که نحوه مدیریت کد روی سیستم خود را یاد گرفتید، زمان میزبانی کد در فضای ابری فرا رسیده است.

سیستم های کنترل نسخه توزیع شده (DVCS) به تدریج جایگزین سیستم های متمرکز می شوند. اگر هنوز از یکی از آنها استفاده نکرده اید، اکنون وقت آن است که امتحان کنید.

در این مقاله سعی خواهم کرد نشان دهم که چگونه می توانید با استفاده از وب سایت github.com به سرعت آزمایش git را شروع کنید.

در این مقاله تفاوت بین DVCS های مختلف بحث نخواهد شد. همچنین کار با git به طور مفصل مورد بحث قرار نخواهد گرفت؛ منابع خوب زیادی در این زمینه وجود دارد که در پایان مقاله ارائه خواهم کرد.

بنابراین، سایت github.com به عنوان یک سرویس میزبانی پروژه وب با استفاده از سیستم کنترل نسخه git و همچنین شبکه اجتماعیبرای توسعه دهندگان کاربران می توانند تعداد نامحدودی مخزن ایجاد کنند که هر کدام با ویکی، سیستم ردیابی مشکل، امکان بررسی کد و بسیاری موارد دیگر ارائه می شود. GitHub در حال حاضر محبوب ترین سرویس از این نوع است، پیش از Sourceforge و Google Code.

برای پروژه های منبع باز، استفاده از سایت رایگان است. اگر نیاز به مخازن خصوصی دارید، می توانید به یک طرح پولی ارتقا دهید:

بیایید با ثبت نام شروع کنیم. پیوند github.com/signup/free را دنبال کنید و داده های خود را وارد کنید.
پس از ثبت نام، به داشبورد حساب کاربری خود منتقل می شویم:

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

اما ابتدا بیایید git را نصب کنیم و آن را برای کار با سایت پیکربندی کنیم.

اگر روی ویندوز کار می کنید، msysgit را دانلود و نصب کنید. این نسخه کنسولی git برای ویندوز است (در ادامه داستان بر اساس مثال این سیستم عامل خواهد بود).
دستورالعمل برای MacOS X (eng)
دستورالعمل لینوکس (انگلیسی)
هیچ مشکلی وجود ندارد، فقط روی Next کلیک کنید. پس از نصب، از منوی زمینه Git Bash Explorer انتخاب کنید:

یا از طریق Git Bash.lnk در پوشه با برنامه نصب شده:

تنظیمات داده‌ها و شکست خط را در کنسول وارد می‌کنیم:
git config --global user.name "نام شما"
git config --global user.email "ایمیل شما"
git config --global core.autocrlf true
git config --global core.safecrlf true

به هر حال، من توصیه می کنم یک دوره تعاملی خوب در مورد استفاده از git از کنسول داشته باشید. این دوره در چند ساعت تکمیل می شود و مهارت های اولیه لازم را ارائه می دهد.

برای کسانی که gui را ترجیح می دهند، چندین ابزار از این دست برای کار با git در ویندوز وجود دارد. دو مورد اصلی SmartGit (کراس پلتفرم) و TortoiseGit هستند. هر دو خوب هستند و اینکه کدام یک از آنها استفاده شود سلیقه ای است. من کار با TortoiseGit را شرح خواهم داد.
برای خشخاش نیز امکان انتخاب گیو وجود دارد.

  • به نظر من مشتری رسمی از GitHub هنوز کاملاً خام است.
  • GitX - من شخصاً آن را دوست نداشتم
  • GitBox - اکثراً از Mac-way پیروی می کنند، من به شدت توصیه می کنم آن را امتحان کنید

درباره git به زبان روسی:
"یک مدل شاخه‌بندی موفق برای git" - ترجمه یک مقاله انگلیسی خوب
دوره تعاملی githowto.com کار با git از کنسول
چرا git + بحث
"Git برای کسانی که از SVN مهاجرت می کنند" + بحث

Github یک پلت فرم بسیار معروف برای ذخیره، توزیع و مدیریت است کد منبعپروژه های باز این سرویس توسط بسیاری از توسعه دهندگان در سراسر جهان از جمله شرکت های بزرگ مانند مایکروسافت، RedHat و بسیاری دیگر و همچنین صدها توسعه دهنده بسیاری از پروژه های محبوب استفاده می شود.

این پلتفرم فرصت هایی را نه تنها برای مشاهده کد و توزیع آن، بلکه تاریخچه نسخه، ابزارهای توسعه مشارکتی، ابزارهایی برای ارائه اسناد، صدور نسخه ها و بازخورد. و بهترین بخش این است که می توانید پروژه های عمومی و خصوصی را در Gihub میزبانی کنید. در این مقاله به نحوه استفاده از Github برای میزبانی پروژه خود خواهیم پرداخت. بنابراین، github برای مبتدیان.

بنابراین، فرض کنید شما پروژه خود را دارید و می خواهید کد آن را در Github در دامنه عمومی قرار دهید تا سایر کاربران بتوانند آن را مشاهده کنند و در توسعه شرکت کنند. اولین کاری که باید انجام دهید این است که یک حساب کاربری ایجاد کنید.

1. ایجاد حساب کاربری

خلق كردن حساب جدیددر وب سایت باز کنید صفحه نخست GitHub و بلافاصله می توانید داده ها را برای یک جدید وارد کنید حساب. شما باید نام کاربری، ایمیل و رمز عبور را وارد کنید:

پس از اتمام ورود، دکمه را فشار دهید "ثبت نام رایگان":

در مرحله بعد باید نوع مخزن را انتخاب کنید. مخازن عمومی رایگان هستند، اما اگر می خواهید یک مخزن خصوصی ایجاد کنید که کد آن فقط در دسترس شما باشد، باید 7 دلار در ماه بپردازید.

حساب شما آماده است و به صفحه ای هدایت می شوید که می توانید اولین پروژه خود را ایجاد کنید. اما قبل از انجام این کار، باید آدرس ایمیل خود را تأیید کنید. برای انجام این کار، خود را باز کنید صندوق پستیو لینک موجود در ایمیل Github را دنبال کنید.

نیازی به راه اندازی github نیست، فقط چند کلیک کافی است.

2. ایجاد یک مخزن

در صفحه ای که باز می شود، این صفحه اصلی برای کاربران مجاز است، روی دکمه کلیک کنید "شروع یک پروژه":

می توانید بلافاصله با ایجاد یک فایل Readme با علامت زدن کادر، مخزن را مقداردهی اولیه کنید "این مخزن را با یک README راه اندازی کنید"در پایین صفحه. همچنین می توانید مجوز را انتخاب کنید:

وقتی آماده شد، انتخاب کنید "ایجاد پروژه"، ایجاد خواهد شد پروژه جدیدبا یک فایل README حاوی توضیحات و یک فایل مجوز.


3. افزودن شاخه ها

شاخه های Github به شما این امکان را می دهند که با چندین نسخه از یک پروژه به طور همزمان کار کنید. به طور پیش فرض، هنگام ایجاد یک مخزن، شاخه اصلی ایجاد می شود، این شاخه اصلی کار است. برای مثال می توانید شاخه های اضافی ایجاد کنید تا آزمایش کنید نرم افزارقبل از انتشار در شعبه اصلی. به این ترتیب می توانید به طور همزمان محصول را توسعه دهید و نسخه پایدار آن را در اختیار کاربران قرار دهید. همچنین می توانید شاخه های جداگانه ای برای نسخه برنامه برای سیستم های مختلف ایجاد کنید.

شاخه فعلی در گوشه سمت چپ بالا بعد از کلمه نشان داده شده است "شاخه".برای ایجاد یک شعبه جدید، به سادگی این لیست را گسترش دهید و شروع به تایپ نام آن کنید:

خود سایت از شما می خواهد که یک موضوع جدید ایجاد کنید، انتخاب کنید "ایجاد شعبه".

بلافاصله پس از ایجاد، شما با شعبه تازه ایجاد شده کار خواهید کرد.

4. فایل تغییر و commit می کند

هر گونه تغییر در فایل ها در Github با استفاده از commit انجام می شود. یک commit با ایجاد خود اصلاحات و توصیف آن اصلاحات انجام می شود. این امر ضروری است تا بدانید چه چیزی و چه زمانی تغییر کرده اید و همچنین پیگیری کار تیم را آسان می کند. کلمه commit را می توان به عنوان "اصلاح" ترجمه کرد. یعنی می توانیم در چندین فایل تغییراتی ایجاد کنیم و سپس آنها را commit کنیم. بیایید فایل README را به عنوان مثال تغییر دهیم. برای انجام این کار، دکمه را با یک قلم مو در سمت راست پانل پیدا کنید و روی آن کلیک کنید:

یک ویرایشگر متن باز می شود که در آن می توانید اصلاحات مورد نیاز خود را وارد کنید:

پس از انجام تمام کارهای مورد نیاز، باید فیلد را پر کنید "مرتکب شدن"در پایین صفحه. به طور خلاصه توضیح دهید که چه چیزی تغییر کرده است و سپس روی دکمه کلیک کنید "متعهد به تغییرات":

این تغییرات در شعبه فعلی پروژه انجام می شود، چون در حال حاضر در حال تست هستیم، تغییرات به آنجا ارسال می شود.

5. ایجاد درخواست های کششی

GitHub برای مبتدیان ممکن است دقیقاً به دلیل چنین ویژگی هایی بسیار پیچیده به نظر برسد، اما زمانی که متوجه شوید بسیار راحت است. درخواست ادغام یا درخواست کشش قابلیتی است که به موجب آن هر توسعه‌دهنده‌ای می‌تواند از دیگری، مانند خالق یک مخزن، بخواهد تا کد خود را بررسی کند و آن را به پروژه یا شعبه اصلی اضافه کند. ابزار Merge Request از ابزار مقایسه diff استفاده می کند، بنابراین می توانید تمام تغییرات را مشاهده کنید، زیر آنها با رنگ دیگری خط کشیده می شوند. درخواست کشش را می توان بلافاصله پس از ایجاد یک commit ایجاد کرد. بیایید یک Pull Request از شعبه آزمایشی خود به شعبه اصلی ارسال کنیم. ابتدا تب را باز کنید "درخواست کشش".

اینجا کلیک کنید "ایجاد درخواست کشش":

در این پنجره می توانید تمام تغییرات را مشاهده کنید، اکنون می بینیم که خط اضافه شده است:

6. بررسی و تایید درخواست های ادغام

اکنون، در همان تب Pull Requests، درخواست ادغام ایجاد شده جدید را می بینیم و تنها کاری که باید انجام دهیم این است که با کلیک کردن، آن را بپذیریم. "درخواست ادغام کشش":

اما اگر این درخواست از طرف شخص دیگری آمده است، باید بررسی کنید که او در آنجا چه چیزی را تغییر داده و آیا لازم است یا خیر، برای این کار کافی است روی توضیحات درخواست کلیک کنید و پنجره تغییر view از قبل آشنا را مشاهده خواهید کرد:

سپس کد به شاخه اصلی وارد می شود و شاخه آزمایشی را می توان با خیال راحت حذف کرد.

7. گزارش اشکال

یکی دیگر از موارد راحت این است که می توانید از GitHub نه تنها برای توسعه و مدیریت کد، بلکه برای بازخورد کاربران نیز استفاده کنید. روی زبانه "موضوع"کاربران می توانند در مورد مشکلاتی که هنگام استفاده از محصول شما با آن مواجه شده اند پیام ارسال کنند. برگه را باز کنید "مسائل"و روی دکمه کلیک کنید "مسئله جدید":

8. آزاد می کند

آخرین چیزی که امروز به آن نگاه خواهیم کرد، انتشار است. وقتی محصول به مرحله خاصی رسید، می‌توانید نسخه‌ای را منتشر کنید تا کاربران و شما مطمئن باشند که همه چیز در آنجا پایدار است و هیچ‌کس با یک Pull Request نادرست در Master چیزی را شکسته است. ابتدا باید به صفحه اصلی پروژه و سپس به تب بروید "منتشر شده":

در این صفحه باید نسخه را در فیلد مشخص کنید "نسخه برچسب"، سپس نام انتشار و توضیحات کوتاه. اگر بایگانی‌ها را با فایل‌های باینری کامپایل کرده‌اید، باید آن‌ها را در اینجا پیوست کنید. سپس کلیک کنید "ایجاد انتشار":

پس از ایجاد نسخه، صفحه زیر ایجاد می شود:

نتیجه گیری

در این مقاله به نحوه استفاده از GitHub برای میزبانی و مدیریت پروژه خود پرداختیم. کل سیستم به زبان انگلیسی است، بنابراین دانش عمومیزبان ها بسیار مطلوب هستند، اما حتی بدون آنها، کار با github چندان دشوار نخواهد بود. امیدوارم این اطلاعات برای شما مفید بوده باشد. اگر به نحوه کار با Git از طریق خط فرمان علاقه مند هستید، به مقاله برای مبتدیان مراجعه کنید.

این قسمت عملی استفاده از Git - نصب آن و ثبت آن در سرور GitHub.com را شرح می دهد.

GitHub.com سرویسی است که ذخیره کد و داده های شما را با استفاده از سیستم کنترل نسخه ارائه می دهد Git. GitHub یک طرح رایگان برای ذخیره 300 مگابایت داده متن ساده ارائه می دهد. این بدان معناست که هر کاربر اینترنتی می تواند داده های شما را دانلود کند. همچنین می‌توانید با پرداخت 7 دلار در ماه، مخازنی را میزبانی کنید که برای دیگران بسته هستند در GitHub. در یک حساب رایگان GitHub، به طور پیش فرض، هیچ کس نمی تواند داده های شما را تغییر دهد (آنها فقط می توانند آن را بخوانند). اما شما می توانید تعیین کنید که کدام کاربران سیستم GitHub دارای حقوق نوشتن هستند.

این مقاله به طور مفصل نحوه پیکربندی Git را در سیستم عامل ویندوز و لینوکس توضیح می دهد.

نصب Git در لینوکس

من فکر می کنم توضیح دادن به کاربران لینوکس در مورد نحوه نصب Git هیچ فایده ای ندارد - این کار در هر سیستم متفاوت است. در یک سیستم دبیان (که من دارم)، برای نصب Git، می توانید از دستور زیر استفاده کنید:

apt-get install git

نصب Git در ویندوز

برویم به صفحه رسمی http://git-scm.com را وارد کنید، روی آن کلیک کنید دانلود برای ویندوز. در پنجره باز شده بر روی آن کلیک کنید نصب کننده کامل Git رسمی. فایل exe حاصل را راه اندازی می کنیم.

در طول مراحل نصب از شما سوال زیر پرسیده می شود:

من توصیه می کنم "Run Git" را از Command Prompt ویندوز انتخاب کنید. همه گزینه های دیگر را می توان به عنوان پیش فرض باقی گذاشت. پس از نصب Git، باید مجددا راه اندازی یا از سیستم خارج شوید و دوباره وارد شوید تا تغییرات در متغیر PATH سیستم اعمال شود.

اگر اطلاعات نسخه را دریافت کنیم، Git نصب شده و کار می کند. اگر اطلاعاتی دریافت کنیم که برنامه git پیدا نشده است، متوجه می شویم که چه اشتباهی انجام داده ایم.

تنظیم کلیدهای SSH

قبل از ثبت نام در GitHub، ابتدا باید یک کلید رمزگذاری SSH ایجاد کنید. این کلید برای برقراری سریع اتصال به GitHub بدون وارد کردن رمز عبور لازم است. بدون چنین کلیدی، GitHub به سادگی کار نخواهد کرد.

توجه!

وقتی کلید تولید شد، از شما رمز عبور خواسته می شود. این رمز ورود به کلید خصوصی است که فقط در دستگاه شما ذخیره می شود و در هیچ جای دیگری ذخیره نمی شود. این رمز عبور برای حداکثر امنیت تنظیم شده است، اگرچه می توانید بدون آن کار کنید. باید بدانید که با تعیین رمز عبور برای کلید خصوصی، هر بار که به سرور GitHub متصل می شوید، باید این رمز عبور را وارد کنید. بنابراین، هنگام تنظیم رمز عبور، تمام راحتی استفاده از کلیدهای رمزگذاری ناپدید می شود.

کاربران MyTetra:رابط برای کار با خط فرمان، که برای فراخوانی git در هنگام همگام سازی استفاده می شود، نمی تواند ورودی کاراکتر را بپذیرد. بنابراین، اگر رمز عبور تنظیم کنید، همگام سازی کار نخواهد کرد.

راه اندازی کلیدهای SSH در لینوکس

که در سیستم عامللینوکس ابتدا باید به دایرکتوری ~/.ssh نگاه کند. اگر فایل‌های id_rsa و id_rsa.pub وجود دارد، اینها کلیدهای SSH هستند. اگر چنین دایرکتوری یا فایل هایی وجود نداشته باشد، باید کلیدها تولید شوند. دستور می دهیم:

بجای [ایمیل محافظت شده]باید ایمیل خود را نشان دهید در طول فرآیند تولید کلید، از شما پرسیده می شود که فایل ها را کجا قرار دهید؛ در پاسخ، کافی است Enter را فشار دهید. هنگامی که از شما خواسته شد رمز عبور را وارد کنید، کافی است Enter را فشار دهید. پس از تولید، فایل‌های id_rsa و id_rsa.pub باید در فهرست ~/.ssh ظاهر شوند؛ این فایل‌ها در آینده برای ما مفید خواهند بود.

راه اندازی کلیدهای SSH در ویندوز

در اتاق عمل سیستم ویندوزیک مولد کلید SSH با Git گنجانده شده است. برای تولید کلیدها باید فایل را اجرا کنید C:\Program Files\Git\Git bash.vbs. می توان آن را به عنوان یک فایل exe معمولی راه اندازی کرد. برنامه Git Console باز خواهد شد. در آن شما باید دستور را بدهید:

ssh-keygen -t rsa -C " [ایمیل محافظت شده]"

مراقب باشید، کپی پیست در این کنسول باگ است، وارد کردن دستور به صورت دستی آسان تر است. ما صندوق پستی شما را به عنوان ایمیل شما نشان می دهیم. در صورت درخواست " فایلی را وارد کنید که در آن کلید ذخیره شود"به سادگی Enter را فشار دهید. هنگامی که از شما خواسته شد رمز عبور را وارد کنید، عبارت عبور را وارد کنید و دوباره همان عبارت عبور را وارد کنید" به سادگی Enter را فشار دهید. در طول فرآیند تولید کلیدها، تقریباً اطلاعات زیر در کنسول نمایش داده می شود:

ایجاد جفت کلید عمومی/خصوصی rsa.
فایلی را وارد کنید که در آن کلید ذخیره شود (/c/Documents and Settings/username/.ssh/id_rsa):
عبارت عبور را وارد کنید (خالی برای بدون عبارت عبور):
دوباره همان عبارت عبور را وارد کنید:
شناسه شما در /c/Documents and Settings/username/.ssh/id_rsa ذخیره شده است.
کلید عمومی شما در /c/Documents and Settings/username/.ssh/id_rsa.pub ذخیره شده است.
اثر انگشت کلیدی این است:
51:db:73:e9:31:9f:51:a6:7a:c5:3d:da:9c:35:8f:95 [ایمیل محافظت شده]

پس از اجرای این برنامه در دایرکتوری C:\Documents and Settings\username\.sshفایل های id_rsa و id_rsa.pub وجود خواهند داشت که در آینده برای ما مفید خواهند بود.

در GitHub.com ثبت نام کنید

اکنون همه چیز برای ثبت نام آماده است. برویم به صفحه نخست GitHub.com. رابط کاربری کمی گیج کننده است، بنابراین من چند اسکرین شات از جایی که روی چه چیزی کلیک کنید به شما می دهم. طراحی و چیدمان را می توان در هر زمان تغییر داد، بنابراین من در حال حاضر منطق اقدامات را شرح می دهم.

که در منوی بالامورد را پیدا کنید" قیمت گذاری و ثبت نام"و روی آن کلیک کنید:

صفحه انتخاب باز خواهد شد طرح تعرفه. یک حساب کاربری رایگان انتخاب کنید" یک حساب کاربری رایگان ایجاد کنید":

نصب کلید SSH در GitHub

بلافاصله پس از ثبت نام، باید کلید رمزگذاری عمومی (کلید عمومی SSH) خود را در سیستم GutHub ثبت کنید. برای افزودن یک کلید، باید روی "در گوشه سمت راست بالا کلیک کنید تنظیمات حساب":

در پنجره ای که باز می شود، روی آیتم منو کلیک کنید " کلیدهای عمومی SSH"، و " را فشار دهید یک کلید عمومی دیگر اضافه کنید". دو فیلد ظاهر می شود - نام کلید ( عنوان) و محتویات کلید ( کلید).

در زمینه عنوانمی توانید نام رایانه ای را که کلید عمومی روی آن تولید شده است بنویسید. می توانید به زبان روسی بنویسید.

در زمینه کلیدشما باید محتویات فایل id_rsa.pub را وارد کنید. یادتان هست در چه دایرکتوری هستند؟ به این دایرکتوری می رویم، فایل id_rsa.pub را با هر ویرایشگر متنی باز می کنیم (دقیقا با پسوند pub. اشتباهش نکنید). تمام متن را انتخاب کنید، کپی کنید و آن را در فیلد صفحه GitHub قرار دهید کلید.

پس از افزودن کلید، کامپیوتر می تواند از طریق برنامه git به GitHub متصل شود و هیچ خطایی رخ ندهد.

ایجاد یک مخزن در GitHub

اکنون زمان ایجاد اولین مخزن GitHub است. مخزن را می توان به سادگی به عنوان دایرکتوری در نظر گرفت که فایل ها و زیرشاخه های همگام سازی شده در آن قرار می گیرند. شما باید یک مخزن در رابط وب GitHub ایجاد کنید و می توانید آن را با فایل ها پر کنید و با استفاده از برنامه git در رایانه خود با آن کار کنید.

برای ایجاد یک مخزن، باید روی "در گوشه سمت راست بالا کلیک کنید داشبورد". در پنجره ای که باز می شود مورد را مشاهده خواهید کرد" یک مخزن ایجاد کنید":

بنابراین، ما به این نکته نیاز نداریم! این مورد گفتگوی ایجاد مخزن را باز نمی کند، بلکه یک صفحه راهنما را باز می کند. به جای کلیک کردن بر روی این مورد، به دنبال پیوند نامحسوس زیر در صفحه بگردید. یک مخزن ایجاد کنید". گفتگو را برای افزودن یک مخزن جدید باز می کند.

در گفتگو برای افزودن یک مخزن جدید، باید حداقل فیلد نام پروژه را پر کنید. نام پروژه". بهتر است از الفبای سیریلیک در نام پروژه استفاده نکنید، زیرا نام پروژه در واقع نام دایرکتوری است. برای جلوگیری از بروز مشکل، بهتر است نام پروژه فقط شامل الفبای لاتین باشد. پس از کلیک بر روی " مخزن ایجاد کنید"، مخزن ایجاد خواهد شد.

یک پیوند کاری به مخزن در سیستم GitHub به صورت زیر تشکیل می شود. اگر به عنوان نام کاربری ثبت نام کرده اید و مخزن شما reponame نام دارد، می توانید از لینک های زیر برای دسترسی به این مخزن استفاده کنید:

در نحو Git:

[ایمیل محافظت شده]:username/reponame.git

در نحو Https:

https:// [ایمیل محافظت شده]/username/reponame.git

کار با یک مخزن در GitHub با استفاده از برنامه Git

از این لحظه به بعد، رقص پیرامون رابط وب GitHub را می توان کامل در نظر گرفت. علاوه بر این، فقط می توانید با استفاده از برنامه git کار کنید.

ابتدا باید کمی برنامه git را پیکربندی کنید: نام کاربری و ایمیل خود را به سیستم محلی git مشخص کنید. این کار با دستورات زیر انجام می شود که از هر دایرکتوری قابل اجرا هستند:

git config --global user.name "YourFullName"
git config --global user.email [ایمیل محافظت شده]

جایی که به جای YourFullName باید نام خود را بنویسید و به جای [ایمیل محافظت شده]- ایمیل شما. این مقادیر برای ورود به GitHub استفاده می شود. بنابراین، به جای YourFullName باید ورود خود را در GitHub نشان دهید و در جای خود [ایمیل محافظت شده]باید ایمیلی را که هنگام تولید کلیدهای رمزگذاری وارد کرده اید مشخص کنید.

پس از انجام این تنظیمات می توانید فایل های خود را در مخزن آپلود کنید. با پروژه خود به دایرکتوری بروید و دستورات را بدهید:

git commit -a -m "اولین commit"

git remote add origin [ایمیل محافظت شده]:username/reponame.git

استاد اصلی git push -u

پس از این دستورات، کپی هایی از فایل های دایرکتوری که این دستورات در آن اجرا شده اند، در سرور GitHub ایجاد می شوند. سپس می توانید commit کنید، تغییرات را در سرور GitHub آپلود کنید و تغییرات را از سرور بخوانید. اما این یک داستان کاملا متفاوت است.

مقاومت در برابر تغییر یک ویژگی اساسی انسان است. اگر Git در زمان شروع کار با سیستم‌های کنترل نسخه وجود نداشت، به احتمال زیاد با Subversion شروع کرده‌اید. مردم اغلب می گویند که Git برای مبتدیان بسیار دشوار است. با این حال، من خواهش می کنم با شما اختلاف نظر داشته باشم.

در این مقاله به شما خواهم گفت که چگونه می توانید از Git برای کار با پروژه های خود استفاده کنید. بیایید فرض کنیم که شما در حال ایجاد یک پروژه از ابتدا هستید و می خواهید از Git به عنوان سیستم کنترل نسخه خود استفاده کنید. پس از معرفی دستورات اولیه، نحوه انتشار کد خود را در GitHub بررسی خواهیم کرد.

این مقاله اصول اولیه را پوشش می‌دهد - چگونه یک پروژه را مقداردهی اولیه کنیم، چگونه فایل‌های جدید و موجود را مدیریت کنیم، و چگونه کد خود را در فضای ابری ذخیره کنیم. از آنجایی که هدف این مقاله مبتدیان است، از برخی موارد پیچیده مانند شاخه‌بندی صرف نظر می‌کنیم.

نصب Git

در وب سایت رسمی Git وجود دارد در سیستم های مختلف- لینوکس، مک، ویندوز. در مورد ما، ما از اوبونتو 13.04 استفاده خواهیم کرد و Git را از طریق apt-get نصب خواهیم کرد.

Sudo apt-get install git

پیکربندی اولیه

بیایید یک دایرکتوری ایجاد کنیم که در آن کار کنیم. شما همچنین می توانید از Git برای کار بر روی یک پروژه موجود استفاده کنید، در این صورت نیازی به ایجاد دایرکتوری دمو نخواهید داشت که در زیر توضیح داده شده است.

Mkdir my_git_project سی دی my_git_project

اولین قدم این است که مخزن Git را در دایرکتوری پروژه مقداردهی کنید. می توانید این کار را با دستور init انجام دهید که یک دایرکتوری git. با تمام اطلاعات پروژه شما ایجاد می کند.

Git config --global user.name "Shaumik" git config --global user.email " [ایمیل محافظت شده]" git config --global color.ui "auto"

شایان ذکر است که اگر آدرس و نام خود را مشخص نکنید، به جای آن از مقادیر پیش فرض استفاده می شود. در مورد ما، مقادیر پیش فرض donny و donny@ubuntu خواهند بود.

همچنین رنگ رابط را روی auto قرار دادیم تا خروجی دستورات Git رنگی شود. ما پیشوند --global را به این دستورات اضافه می کنیم تا این مقادیر در کل سیستم استفاده شوند و نیازی به تنظیم پروژه به پروژه نباشد.

آماده سازی فایل ها برای commit

مرحله بعدی ایجاد چند فایل است. برای این کار می توانید از هر ویرایشگر متنی استفاده کنید. توجه داشته باشید که اگر Git را روی یک پروژه موجود راه اندازی می کنید، نیازی به انجام این مرحله ندارید.

بررسی وضعیت مخزن

اکنون که فایل هایی در پروژه خود دارید، بیایید ببینیم Git چگونه آنها را مدیریت می کند. برای بررسی وضعیت فعلی مخزن، از دستور git status استفاده کنید

افزودن فایل به Git

در این مرحله، Git هیچ یک از فایل های ما را پیگیری نمی کند. برای این کار باید به طور خاص فایل هایی را به Git اضافه کنید. برای این کار از دستور add استفاده می کنیم.

Git add my_file

با بررسی وضعیت مخزن، می بینیم که یکی از فایل ها قبلاً به آن اضافه شده است.

برای افزودن چند فایل از موارد زیر استفاده می کنیم (توجه داشته باشید که فایل اول را قبلا اضافه کردیم، بنابراین فقط دو فایل باقی مانده را اضافه می کنیم).

Git add myfile2 myfile3

امکان استفاده از git add به صورت بازگشتی وجود دارد، اما مراقب این دستور باشید. برخی از فایل ها (مانند برنامه های کامپایل شده) وجود دارند که نباید به کنترل نسخه اضافه شوند. اگر از git add به صورت بازگشتی استفاده کنید، چنین فایل هایی نیز در مخزن قرار می گیرند.

حذف فایل ها

بیایید تصور کنیم که شما به طور تصادفی فایلی را به مخزن اضافه کرده اید که نباید آنجا می بود. یا می خواهید فایلی را از سیستم کنترل نسخه حذف کنید. به طور کلی، دستور git rm نه تنها یک فایل را از مخزن حذف می کند، بلکه به صورت فیزیکی آن را از دیسک حذف می کند. برای اینکه Git ردیابی فایل را متوقف کند اما آن را روی دیسک نگه دارد، از دستور زیر استفاده کنید:

Git rm --cached [نام فایل]

تغییرات را متعهد شوید

هنگامی که تمام فایل های لازم را اضافه کردید، می توانید آنها را به Git commit کنید. یک commit را به عنوان یک عکس فوری از وضعیت پروژه در یک مرحله خاص در نظر بگیرید که می توانید در هر نقطه از زمان به آن بازگردید و وضعیت پروژه را در آن لحظه ببینید. هر commit یک پیام مرتبط با خود دارد که به عنوان آرگومان بعد از پیشوند -m مشخص می شود

Git commit -m "اولین تعهد من"

لطفاً پیامی را مشخص کنید که حاوی آن باشد اطلاعات مفید، زیرا آنها به درک اینکه دقیقاً چه چیزی در یک commit معین تغییر کرده است کمک می کنند. از هرگونه پیام عمومی مانند "قوانین اشکال" خودداری کنید. اگر ردیاب اشکال دارید، می‌توانید پیامی مانند «اشکال #123 رفع شد» را مشخص کنید. تمرین خوب- نام شعبه یا بهبود را در پیام ذکر کنید. به عنوان مثال، "مدیریت دارایی - اضافه شدن توانایی تولید PDF بر اساس دارایی" یک پیام واضح و قابل درک است.

Git یک commit با یک عدد هگزادسیمال طولانی را شناسایی می کند. معمولاً نیازی به کپی کردن کل خط نیست، 5-6 کاراکتر اول برای شناسایی یک commit خاص کافی است. از اسکرین شات می بینید که commit ما با عدد 8dd76fc مشخص می شود.

بیشتر متعهد می شود

بیایید چند فایل را بعد از اینکه آنها را متعهد کردیم تغییر دهیم. بعد از اینکه آنها را تغییر دادیم، وضعیت git گزارش می دهد که فایل ها را تغییر داده ایم.

با استفاده از دستور git diff می توانید ببینید که چه چیزی در این فایل ها از commit قبلی تغییر کرده است. اگر می خواهید تغییرات یک فایل خاص را مشاهده کنید، می توانید از git diff استفاده کنید<файл> .

لازم است تغییرات را ایندکس کنید و آنها را انجام دهید. تمام فایل های پروژه تغییر یافته را می توان با دستور زیر به یک commit اضافه کرد:

می توانید با افزودن گزینه -a به git commit از استفاده از این دستور اجتناب کنید. این دستور تمام فایل های تغییر یافته را ایندکس کرده و آنها را commit می کند. اما این رویکرد می‌تواند بسیار خطرناک باشد، زیرا می‌توانید به اشتباه کاری را که نمی‌خواستید انجام دهید. به عنوان مثال، فرض کنید یک فایل را باز کرده اید و به طور تصادفی آن را تغییر داده اید. هنگام نمایه سازی فایل های تغییر یافته، از تغییرات هر فایل مطلع خواهید شد. اما اگر تمام فایل های تغییر یافته را بدون نگاه کردن به راهنما، commit کنید. git commit -a، سپس همه فایل‌ها، از جمله فایل‌هایی که نمی‌خواستید commit کنید، متعهد می‌شوند.

هنگامی که فایل ها را ایندکس کردید، می توانید شروع به commit کنید. همانطور که قبلا ذکر شد، می توانید با استفاده از سوئیچ -m یک پیام برای یک commit تعیین کنید. اما شما همچنین می توانید نظرات چند خطی را با استفاده از دستور git commit تعیین کنید، که ویرایشگر کنسول را برای وارد کردن یک نظر باز می کند.

مدیریت پروژه

برای مشاهده تاریخچه پروژه می توانید از دستور زیر استفاده کنید:

تاریخچه کامل پروژه را در قالب لیستی از commit ها و اطلاعات مربوط به آنها نمایش می دهد. اطلاعات commit شامل هش commit، نویسنده، زمان و پیام commit است. انواع مختلفی از دستور git log وجود دارد که هنگام استفاده از شاخه Git باید با آنها آشنا شوید. برای مشاهده جزئیات یک commit خاص و تغییر فایل ها، دستور زیر را اجرا کنید:

نمایش گیت<хеш_коммита>

جایی که<хеш_коммита>- عدد هگزادسیمال مرتبط با commit. زیرا این راهنماکه برای مبتدیان در نظر گرفته شده است، ما به نحوه برگرداندن حالت به زمان یک commit خاص یا نحوه مدیریت شاخه ها نمی پردازیم.