آموزش Git

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

برگزارکننده:  مکتب‌خونه  مکتب‌خونه
مدرس دوره:
4.2 (67 رای)
سطح: مقدماتی
 پلاس
  
زمان مورد نیاز برای گذارندن دوره:  10 ساعت
مجموع محتوای آموزشی:  5 ساعت ویدئو - 5 ساعت تمرین و پروژه
 (قابل دانلود می‌باشد)
مهلت دوره:  4 هفته
  
حد نصاب قبولی در دوره:  70 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   گواهی‌نامه مکتب‌خونه course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام

پیش‌نیاز‌ها

آشنایی با زبان‌های برنامه‌نویسی

سرفصل‌های دوره آموزش Git

معرفی Git
  چرا Git؟
"06:20  
  چرا Git؟
 33.3%    
"02:00  
  نصب Git
"06:59  
  نصب Git
 33.3%    
"02:00  
  استفاده از ZSH به جای Bash
"05:09  
  استفاده از ZSH به جای Bash
 33.3%    
"01:00  
شروع کار با Git
  اصطلاحات و ترمینولوژی
"04:31  
  اصطلاحات و ترمینولوژی
"03:00  
  ایجاد Repository و Git init
"17:10  
  ایجاد Repository و Git init
 66.7%    
"04:00  
  تنظیمات repository و Git config
"03:42  
  تنظیمات repository و Git config
 33.3%    
"02:00  
ذخیره تغییرات در Git
  ذخیره تغییرات
"13:09  
  ذخیره تغییرات
 50%    
"02:00  
  Commit و Commit message
"04:30  
  Git ignore
"07:34  
  Git ignore
 50%    
"01:00  
  Git stash (اختیاری)
"09:17  
بررسی مخزن کد (Repository)
  بررسی مخزن کد
"00:57  
  Git diff
"05:36  
  Git log
"09:16  
  Git blame
"04:37  
  Git blame
 3.6%    
"01:00  
  Git tag
"03:41  
  مروری بر بررسی مخزن کد
"03:25  
  Git reflog (اختیاری)
"01:24  
  پروژه میانی اول (الزامی)
 96.4%    
"60:00  
بازگردانی تغییرات و بازنویسی تاریخچه
  بازگردانی تغییرات
"07:51  
  بازگردانی تغییرات
 100%    
"02:00  
  Git clean
"08:27  
  Git revert
"12:51  
  Git rm
"04:55  
استفاده از سرورهای Git و ادیتورها
  نگهداری از مخزن کد
"11:37  
  اتصال به Remote repository
"17:44  
  اتصال به Remote repository
 3.3%    
"02:00  
  Git remote
"17:45  
  Git remote
 3.3%    
"01:00  
  editor IDE
"11:00  
  استفاده از گیت در IDEهای مختلف
"10:14  
  پروژه میانی دوم (الزامی)
 93.3%    
"120:00  
کار گروهی روی مخزن کد و موارد پیشرفته‌تر درباره Git
  کار گروهی در Git
"11:12  
  کار گروهی در Git
 3%    
"01:00  
  Git rebase
"05:43  
  ادامه Git rebase
"14:15  
  Git rebase
 3%    
"02:00  
  Git merge
"12:57  
  Git merge
 3%    
"02:00  
  Cherry pick
"04:49  
  Conflicts
"14:12  
  جمع‌بندی
"04:03  
  پروژه پایانی (الزامی)
 90.9%    
"120:00  

ویژگی‌های دوره

گواهی‌نامه مکتب‌خونه
گواهی‌نامه مکتب‌خونه

در صورت قبولی در دوره، گواهی نامه رسمی پایان دوره توسط مکتب‌خونه به اسم شما صادر شده و در اختیار شما قرار می گیرد.

مشاهده نمونه گواهینامه

ویژگی‌های دوره

خدمات منتورینگ
خدمات منتورینگ

خدمات منتورینگ به معنای برخورداری دانشجو از راهنما یا پشتیبان علمی در طول گذراندن دوره می‌باشد. این خدمات شامل پاسخگویی به سوالات آموزشی(در قالب تیکتینگ)، تصحیح آزمون یا پروژه های دوره و ارائه باز خورد موثر به دانشجو می‌باشد.

ویژگی‌های دوره

پروژه محور
پروژه محور

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

ویژگی‌های دوره

تمرین و آزمون
تمرین و آزمون

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

ویژگی‌های دوره

تالار گفتگو
تالار گفتگو

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

ویژگی‌های دوره

تسهیل استخدام
تسهیل استخدام

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

بررسی فرصت‌های شغلی

درباره دوره

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

قبل از اینکه به معرفی دوره آموزش Git بپردازیم ابتدا اجازه دهید که به‌صورت مختصر با گیت ویژگی‌های آن آشنا شویم.

Git (سیستم کنترل نسخه) چیست؟

معرفی گیت:

گیت Git یکی از راه‌های پیاده‌سازی ایده کنترل نسخه است. این سیستم کنترل نسخه توزیع‌شده (DVCS) است و معروف‌ترین سیستم کنترل نسخه است.

 برخلاف سیستم کنترل نسخه متمرکز که از یک سرور مرکزی برای ذخیره همه فایل‌ها استفاده می‌کند و همکاری تیمی را امکان‌پذیر می‌کند، DVCS فقط با کمک یک نرم‌افزار دسکتاپ و منفرد موجود در خط فرمان قابل پیاده‌سازی است. پس خرابی سرور مرکزی مشکلی در DVCS ایجاد نمی‌کند؛ بنابراین زمانی که آفلاین هستید نیز می‌توان عملیات زیادی را انجام داد.

نحوه نصب Git

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

 Git با ابزاری به نام git config ارائه می‌شود که به تنظیم متغیرهای پیکربندی که از عملکرد git مراقبت می‌کنند کمک می‌کند. Git می‌تواند متغیرهای پیکربندی را در سه فایل مختلف زیر ذخیره کند:

  • /etc/gitconfig: فایلی است که شامل پیکربندی برای هر کاربر و مخزن سیستم است..
  • ~/.gitconfig: این فایل حاوی مقادیر خاص کاربر است. می‌توان از گزینه global استفاده کرد و تمام مخازن موجود در سیستم را می‌توان پیکربندی کرد.
  • فایل پیکربندی (مخزن فعلی): مختص یک مخزن واحد (جاری) است. گزینه -local را می‌توان برای ایجاد تنظیمات استفاده کرد. (اگر هیچ گزینه‌ای استفاده نمی‌شود، به‌طور پیش‌فرض -local است).

نگران موارد گفته‌شده در بالا نباشید، در دوره آموزش git شما قدم‌به‌قدم پیکربندی git را یاد خواهید گرفت.

درباره استاد

maktabkhooneh-teacher وحید نائینی

وحید نائینی فارغ‌التحصیل مهندسی مکانیک از دانشگاه صنعتی اصفهان و تربیت مدرس است. پروژه آکادمیک و دانشجویی وحید شبیه‌سازی شکست استخوان بوده، ولی از آخرین شغل مرتبط با رشته‌اش، یعنی تدریس در دانشگاه آزاد، ‌چند سالی گذشته است. ایشان کار خود را در برنامه‌نویسی با پردازش تصاویر شروع کرد و در حال حاضر برنامه نویس بک اند است و از سال 1394 سابقهٔ تدریس ۳۰ دوره برنامه‌نویسی پایتون را در مجتمع فنی دارد. ایشان مسلط به زبان‌های برنامه‌نویسی و ابزارهایی مثل C++، Python، Docker، SQL، Git و غیره است. نکته جالب توجه درباره وحید این است که او به زبان‌های غیر برنامه‌نویسی هم علاقه زیادی دارد و با زبان‌های روسی و اسپرانتو هم آشنایی دارد.

مشاهده پروفایل و دوره‌‌های استاد

نظرات کاربران

تا کنون نظری برای این دوره ثبت نشده است. برای ثبت نظر باید ابتدا در دوره ثبت نام کرده و دانشجوی دوره باشید.
اکبر بی طرف 1403-01-28
سلام وقت بخیر من با اینکه با گیت کار کرده بودم و تقریبا اشنایی داشتم اما با دیدن این دوره نسبت به ساختارگیت ونحوه مدیریت نسخه ها و .... فهم بهتری رو بدست اوردم بسیار مفیدو کاربردی بود
مهرناز جلیلی 1403-01-19
این دوره از همه نظر (سرعت گفتار و محتوا و تمرین) فوق العاده بود
محمد حسین رضوان نیا 1403-01-13
برای من که هیچ تجربه ای از استفاده از گیت نداشتم خیلی مفید بود، و خیلی از سوال هایی که در مورد گیت داشتم پاسخ داده شد.
اسرین وکیلی 1402-11-09
دوره خیلی خوبی بود. همه چیز در مورد ماهیت و عملکردها گفته شد. برای افرادی مثل من که لینوکس نیستم اولش یکم سخت ارتباط برقرار کردم ولی الان هم می تونم با دستورات لینوکسی کامل کار کنم هم با گیت هاب دسکتاپ.
حمیدرضا فردوس خواه 1402-10-26
دوره خوبی هست من با اینکه تقریبا با گیت آشنا بودم باز شرکت کردم و به نکات مفیدی هم توی دوره اشاره شد. بحث استفاده از لینوکس در طول دوره که دوستان اشاره بهش داشتند رو میشه عینا با git bash روی ویندوز شبیه سازی کرد. موفق باشید
علی محمودی 1402-10-09
بسیار عالی و دقیق
امیررضا سینکا کریمی 1402-10-06
ممنون از دوره های خوبتون در کل خوب بود ولی خوب ازون دوره هایی هست که فهمش سخته پیاده سازی راحت با تمرین و به مرور مطالب جا میوفته برعکس دوره استاد جادی خوب یادمیگیری میخوای کد بزنی گیر میوفتی
علیرضا بختیاری زاده 1401-09-01
دوره ای بسیار عالی و کاربردی با شیوه ای نسبتاً جدید در آموزش. مدرس دوره فن بیان و تسلط خوبی داره و با آرامشی مثال زدنی به بیان مطالب می پردازد. سرفصل مطالب و بارگزاری ویدئوهای کوتاه بسیار حرفه ای بوده و کوئیزها و پروژه ها بسیار همسو با مطالب ارائه شده برای یادگیری هر چه بهتر دوره طراحی شده بود. من که خیلی استفاده کردم و لذت بردم از این دوره و شدیداً توصیه میکنم. امیدوارم آموزش های بیشتری رو از ایشون ببینیم. اما ضعف های فنی در این دوره به چشم میخوره که شاید گفتنش بهتر از نگفتنش باشه! اول اینکه منم مثل دوستان به اشتباهات فاحش در تدوین ویدئوها معترض هستم. دوم انعکاس نور صحنه در عینک مدرس محترم آزاردهنده بود و سوم اینکه در برخی از ویدئوها چهره بزرگ استاد مانع از دیدن مطالب میشد. در پایان از زحمات تیم حرفه ای مکتب خونه و همچنین مدرس دوره کمال تشکر و قدردانی را دارم.
نازیلا کارکن 1401-06-11
دوره بسیار خوبی بود.من کاملا نحوه کار با گیت با جزییات کاملش رو یاد گرفتم و همینطور نحوه کار ادیتورهای مختلف با گیت.توصیه میکنم حتما این دوره رو بگذرونید. بسیار ممنون از استاد نايینی
امیرمهدی مومنی پور 1401-05-24
دوره خوبی بود ممنونم از استاد نایینی.
محمد کهکشانی 1401-05-15
دوره بسیار خوبی بود و جناب استاد نائینی تقریبا همه چیو کامل با مثال توضیح دادن و منی که تا قبل از این دوره هیچ ذهنیت درستی از گیت نداشتم الان به راحتی دارم با گیت کار میکنم و پروژه هام رو توی گیت هابم ذخیره میکنم. تنها نقطه ضعف دوره کیفیت صدا بود که برای من شخصا بدون استفاده از هندزفری امکان استفاده از دوره وجود نداشت. کیفیت صدا اصلا در حد این دوره و مکتبخونه نبود.
مکتب‌خونه
همراه عزیز؛ از اینکه نظر خود را با ما در میان گذاشتید صمیمانه سپاسگزاریم. موارد مطرح شده جهت بررسی بیشتر به بخش مربوطه ارسال شد. در صورت نیاز به پیگیری بیشتر با شما در ارتباط خواهیم بود.
هادی شیخ بکلو 1401-05-11
بسیار استاد کاربلد،باهوش و صد البته مهربان هستن.خیلی راضی ام از نکاتی که گفتن.براشون بهترین هارو آرزو میکنم
آٰرش دارابی نژاد 1401-05-01
سلام دوره فوق‌العاده‌اس؛ این روش تدریس که اول همه‌چیز به صورت «دستوری» باشه ذهنیت کاملاً درستی از نحوه کارکرد "git" میده، در مرحله بعدی که آموزش به سمت محیط‌های گرافیکی‌تر می‌ره شما دقیقاً می‌دونید داستان چیه :) من خودم بعد از این دوره کمی بیشتر پیگیر مسیر "git & VScode" شدم. خسته نباشید میگم به استاد نائینی
حسن امینی 1401-04-27
دوره ی خیلی خوبی بود و منو بیشتر ترغیب کرد که با لینوکس کار کنم .در حدی که ویندوز رو کلا حذف کردم و الان فقط دارم با اوبنتو کار میکنم .خیلی ممنونم از استاد نائینی.
بهنام تاکی 1401-02-22
دوره خیلی خوبی است. خیلی شسته رفته و در عین حال کاربردی است. دست استاد عزیز و تیم مکتبخونه درد نکنه
1
2
3

دوره‌های پیشنهادی

سوالات پرتکرار

آیا در صورت خرید دوره، گواهی نامه آن به من تعلق می گیرد؟
خیر؛ شما با خرید دوره می توانید در آن دوره شرکت کنید و به محتوای آن دسترسی خواهید داشت. در صورتی که در زمان تعیین شده دوره را با نمره قبولی بگذرانید، گواهی نامه دوره به نام شما صادر خواهد شد.

سوالات پرتکرار

آیا گواهی‌نامه‌های دانشگاهی به صورت رسمی و توسط دانشگاه مربوطه صادر می‌شود؟
بله؛ گواهی نامه ها توسط دانشگاه مربوطه و با امضای رئیس دانشگاه یا مسئول مربوطه که حق امضای گواهی نامه ها را دارد صادر می شود و گواهی نامه معتبر دانشگاه است که به اسم هر فرد صادر می شود.

سوالات پرتکرار

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

سوالات پرتکرار

در صورت قبولی در دوره، آیا امکان دریافت نسخه فیزیکی گواهی نامه دوره را دارم؟
خیر، به دلیل مسائل زیست محیطی و کاهش قطع درختان، فقط نسخه الکترونیکی گواهی‌نامه در اختیار شما قرار می‌گیرد

سوالات پرتکرار

پس از سپری شدن زمان دوره، به محتوای دوره دسترسی خواهم داشت؟
بله؛ پس از سپری شدن مدت زمان دوره شما به محتوای دوره دسترسی خواهید داشت و می توانید از ویدئوها، تمارین، پروژه و دیگر محتوای دوره در صورت وجود استفاده کنید ولی امکان تصحیح تمارین توسط پشتیبان و دریافت گواهی نامه برای شما وجود نخواهد داشت.

تفاوت بین Git و GitHub

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

گیت هابGitHub یک سرویس میزبانی مخزن گیت مبتنی بر وب است که تمام عملکردهای کنترل نسخه توزیع‌شده و مدیریت کد منبع (SCM) Git را ارائه می‌دهد و همچنین ویژگی‌های خود را اضافه می‌کند.

در زیر برخی از تفاوت‌های Git و GitHub آورده شده است:

  • Git یک نرم‌افزار است. GitHub یک سرویس است.
  • Git یک ابزار خط فرمان است GitHub یک رابط کاربری گرافیکی است
  • Git به‌صورت محلی بر روی سیستمی که GitHub در وب میزبانی می‌شود نصب می‌شود
  • Git توسط لینوکس نگهداری می‌شود. GitHub توسط مایکروسافت نگهداری می‌شود.
  • Git بر کنترل نسخه و اشتراک‌گذاری کد متمرکز است. GitHub بر میزبانی کد منبع متمرکز است.
  • Git یک سیستم کنترل نسخه برای مدیریت تاریخچه کد منبع است. GitHub یک سرویس میزبانی برای مخازن Git است.
  • Git اولین بار در سال 2005 منتشر شد. GitHub در سال 2008 راه‌اندازی شد.
  • Git هیچ ویژگی مدیریت کاربر ندارد. GitHub دارای یک ویژگی داخلی مدیریت کاربر است.
  • Git دارای مجوز و منبع باز است. GitHub شامل یک‌لایه رایگان و پرداخت برای استفاده است.
  • Git دارای حداقل پیکربندی ابزار خارجی است. GitHub یک بازار فعال برای ادغام ابزار دارد.
  • Git یک رابط دسکتاپ به نام Git Gui ارائه می‌دهد. GitHub یک رابط دسکتاپ به نام GitHub Desktop ارائه می‌دهد.
  • Git با CVS، Azure DevOps Server، Subversion، Mercurial و غیره رقابت می‌کند. GitHub با GitLab، Git Bucket، AWS Code Commit و غیره رقابت می‌کند.

در دوره آموزش Git شما به‌صورت عملی تفاوت کار با گیت و گیت هاب را یاد خواهید گرفت و قادر خواهید بود هرکدام از آن‌ها را در پروژه‌های خود استفاده کنید.

ویژگی‌های Git

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

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

در اینجا چند ویژگی اساسی و مهم Git آورده شده است:

سیستم توزیع‌شده:

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

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

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

سازگاری:

Git با تمام سیستم‌عامل‌هایی که این روزها مورداستفاده قرار می‌گیرند سازگار است. مخازن Git همچنین می‌توانند به مخازن دیگر سیستم‌های کنترل نسخه مانند SVN، CVK و غیره دسترسی داشته باشند. Git می‌تواند مستقیماً به مخازن راه دور ایجادشده توسط این SVN ها دسترسی داشته باشد؛ بنابراین، کاربرانی که در وهله اول از Git استفاده نمی‌کردند نیز می‌توانند بدون انجام فرآیند کپی کردن فایل‌های خود از مخازن سایر VCS در Git-VCS به Git سوئیچ کنند.

 Git همچنین می‌تواند به مخازن مرکزی سایر VCS ها دسترسی داشته باشد. ازاین‌رو، می‌توان روی Git-SVN کار کرد و از مخزن مرکزی به همان صورت استفاده کرد. Git دارای یک شبیه‌سازی سرور CVS است که استفاده از کلاینت‌های موجود CVS و پلاگین های IDE را برای دسترسی به مخازن Git امکان‌پذیر می‌کند. در دوره آموزش Git شما به‌صورت عملی با این ویژگی‌ها آشنا خواهید شد و با آن‌ها کارخواهید کرد.

توسعه غیرخطی:

Git به کاربران از سرتاسر جهان این امکان را می‌دهد تا عملیات یک پروژه را از راه دور انجام دهند. کاربر می‌تواند هر بخشی از پروژه را برداشته و عملیات موردنیاز را انجام دهد و سپس پروژه را به‌روزرسانی کند. این را می‌توان با رفتار توسعه غیرخطی Git انجام داد. Git از انشعاب و ادغام سریع پشتیبانی می‌کند و شامل ابزارهای خاصی برای تجسم و پیمایش تاریخچه توسعه غیرخطی است. یک فرض اصلی در Git این است که یک تغییر بیشتر ازآنچه نوشته‌شده است ادغام می‌شود.

 Git وضعیت فعلی پروژه را به‌صورت درختی ثبت می‌کند. یک شاخه جدید را می‌توان در هر زمان به درخت اضافه کرد و پس از تکمیل آن با پروژه نهایی ادغام می‌شود. در دوره آموزش Git شما به دستورات مختلف اعم از دستور  merge و سایر دستورات دیگر و نحوه تعامل با آن‌ها آشنا خواهید شد.

انشعاب:

Git به کاربران خود اجازه می‌دهد تا روی خطی از پروژه کار کنند که به‌موازات فایل‌های اصلی پروژه اجرا می‌شود، این کار انشعاب یا شاخه نام دارد که در دوره آموزش Git به این مسئله به‌خوبی پرداخته‌شده است. Branches در Git قابلیتی را برای ایجاد تغییرات در پروژه بدون تأثیر بر نسخه اصلی ارائه می‌دهد. شاخه اصلی یک نسخه همیشه حاوی کد کیفیت تولید است. هر ویژگی جدیدی را می‌توان روی شاخه‌ها آزمایش و کار کرد و در ادامه می‌توان آن را با شاخه اصلی ادغام کرد.

انشعاب و ادغام را می‌توان خیلی راحت با کمک چند دستور Git انجام داد. یک نسخه واحد از یک پروژه ممکن است بر اساس نیاز کاربر دارای n تعداد شاخه باشد.

سبک‌وزن :

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

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

سرعت:

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

قدرت واکشی از یک مخزن محلی حدود 100 برابر سریع‌تر از آن چیزی است که با سرور راه دور ممکن است.

طبق آزمایشی که توسط موزیلا انجام‌شده است، Git یک‌مرتبه سریع‌تر است که حدود 10 برابر سریع‌تر از سایر ابزارهای VCS است. این به این دلیل است که Git درواقع به زبان برنامه نویسی C نوشته‌شده است که برخلاف زبان‌های دیگر، بسیار نزدیک به زبان ماشین است و ازاین‌رو پردازش را بسیار سریع می‌کند. با یادگیری گیت با دوره آموزش Git در مکتب خونه شما قادر خواهید بود در کمترین زمان ممکن و با سرعت بسیار بالا کارهای تغییر نسخه نرم‌افزار را انجام دهید و روی پروژه‌های شخصی کارکنید.

متن‌باز:

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

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

قابل‌اعتماد:

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

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

امن:

Git یک رکورد از تمام تعهدات انجام‌شده توسط هر یک از همکاران در نسخه محلی توسعه‌دهنده نگه می‌دارد. یک فایل log نگهداری می‌شود و هر بار که عملیات push انجام می‌شود به مخزن مرکزی منتقل می‌شود؛ بنابراین، اگر مشکلی پیش بیاید، می‌توان آن را به‌راحتی ردیابی و توسط توسعه‌دهنده مدیریت کرد.

Git از SHA1 برای ذخیره تمام رکوردها به شکل اشیاء در Hash استفاده می‌کند. هر شی‌ء با استفاده از این کلیدهای هش با یکدیگر همکاری می‌کند. SHA1 یک الگوریتم رمزنگاری است که شی‌ء commit را به یک کد هگز 14 رقمی تبدیل می‌کند. این کمک می‌کند تا رکورد تمام تعهدات انجام‌شده توسط هر یک از توسعه‌دهندگان ذخیره شود.

مقرون‌به‌صرفه:

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

 هیچ آزمایشی با فایل‌های روی سرور مرکزی انجام نمی‌شود. این به‌صرفه جویی در هزینه‌های زیادی در سرورهای گران‌قیمت کمک می‌کند. تمام‌کارهای سنگین در سمت کلاینت انجام می‌شود و ازاین‌رو نیازی به داشتن ماشین‌های سنگین برای سمت سرور نیست.

دوره آموزش Git:

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

سرفصل‌های دوره آموزش Git

سرفصل‌های دوره آموزش Git مکتب خون به‌صورت زیر است:

  • معرفی Git
  • شروع کار با Git
  • ذخیره تغییرات در Git
  • بررسی مخزن کد (Repository)
  • بازگردانی تغییرات و بازنویسی تاریخچه
  • استفاده از سرورهای Git و ادیتورها
  • کار گروهی روی مخزن کد و موارد پیشرفته‌تر درباره Git

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

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

دوره آموزش گیت مبتدی با زبان ساده و به صورت اصولی

فرض کنید 10 نفر به صورت همزمان روی یک پروژه برنامه‌نویسی کار می‌کنند و شما به عنوان مدیر پروژه باید در پایان روز بررسی کنید که هر کدام از اعضای تیم چه میزان از کار را پیش برده است. در چنین مواقعی می‌توانیم از یک سیستم کنترل ورژن پروژه (VCS) به نام گیت (Git) استفاده کنید. این سیستم به شما اجازه می‌دهد که به تغییرات پروژه و تاریخچه این تغییرات دسترسی داشته باشید. اگر واقعاً می‌خواهید پروژه‌های برنامه‌نویسی را به صورت حرفه‌ای و دقیق، مدیریت و پیگیری کنید، پیشنهاد ما به شما این است که روی آموزش گیت سرمایه‌گذاری کنید. البته لازم نیست از همان ابتدا صفر تا صد قضیه را یاد بگیرید؛ بلکه برای راحتی کار می‌توانید ابتدا تمرکز خود را روی آموزش گیت مبتدی بگذارید و در گام‌های بعدی سراغ مفاهیم پیچیده‌تر بروید.

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

اصلاً گیت و گیت هاب چیست؟ آشنایی با این دو مفهوم مهم

گیت (Git)، نوعی سیستم کنترل نسخه پروژه است که امکان مدیریت پروژه‌های کوچک و بزرگ را برای کاربران خود فراهم می‌کند. این سیستم، کاملاً رایگان و متن‌باز است و متخصصان و افراد کاربلد، به صورت مداوم آن را بهبود می‌دهند و نسخه‌های به‌روز آن را در اختیار متقاضیان می‌گذارند. گیت در سال 2005 و از سوی لینوس توروالدز، خالق سیستم عامل لینوکس معرفی شد. 

وقتی می‌گوییم گیت، یک سیستم کنترل است، به این معناست که کار ردیابی محتوا را انجام می‌دهد و می‌توان آن را «محل ذخیره محتوا» دانست. البته در حال حاضر، بیشتر از این سیستم برای ذخیره کد استفاده می‌شود. کدهایی که در گیت ذخیره می‌شوند، قابلیت تغییر دارند و می‌توان با اضافه کردن کدهای جدید، آن‌ها را تغییر داد.

یکی از قابلیت‌های مهم گیت که باید در مورد آن حرف بزنیم این است که این سیستم کنترل نسخه، «یک مخزن از راه دور» دارد که در یک «سرور» و یک «مخزن محلی» ذخیره می‌شود. آن مخزن محلی، می‌تواند کامپیوتر هر کدام از توسعه‌دهندگانی باشد که به صورت گروهی فعالیت می‌کنند. در واقع کدهای گیت فقط در یک سرور مرکزی ذخیره نمی‌شوند؛ بلکه روی تمامی کامپیوترهای توسعه‌دهنده نیز کپی می‌شوند. حالا نوبت به تعریف گیت هاب و گیت لب می‌رسد!

برای ساده شدن کار با گیت، ابزارهای مختلفی وجود دارد که از جمله آن‌ها می‌توان به Git kraken، Git gui، Git bash و GitHub و GitLab اشاره کرد. بسیاری از برنامه‌نویسان و توسعه‌دهندگان، نام گیت هاب و گیت لب را شنیده و چه‌بسا از این دو ابزار استفاده هم کرده‌اند. در ادامه با این دو ابزار آشنا می‌شویم و به تفاوت آن‌ها پی می‌بریم:

گیت هاب (GitHub)

گیت هاب، یک پلتفرم میزبانی وب برای پروژه‌های گیت است. در واقع افرادی که می‌خواهند از سرویس کنترل نسخه گیت برای پروژه‌های خود استفاده کنند، می‌توانند از گیت هاب کمک بگیرند و با استفاده از آن، کار تیمی خود را به بهترین شکل پیش ببرند. با استفاده از گیتهاب، می‌‌توان مخازن آنلاین ایجاد کرد. این مخازن، فایل‌های یک پروژه را در خود ذخیره می‌کنند و تغییراتی که روی فایل‌ها صورت گرفته است را نشان می‌دهند. وقتی می‌خواهید روی فایل‌های پروژه کار کنید، می‌توانید مخزن را به کمک GitHub Desktop روی کامپیوتر خود کپی کنید، تغییرات لازم را روی فایل‌ها اعمال کنید و درنهایت این تغییرات را به مخزن برگردانید تا سایر اعضای پروژه هم بتوانند این تغییرات را ببینند. در صورت تمایل به یادگیری نحوه کار با این سرویس می‌تواند از دوره اموزش گیت هاب مکتب خونه استفاده کنید.

گیت لب (GitLab)

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

نحوه دانلود Git

برای دانلود گیت روی سیستم عامل خود، کافی است به وب‌سایت git-scm.com مراجعه کنید. در این وب‌سایت، دکمه مخصوص دانلود گیت به چشم می‌خورد. کافی است روی دکمه کلیک کنید، تا دانلود آغاز شود. دانلود این فایل کاملاً رایگان است. در صورتی که تمایل دارید آموزش گیت مبتدی را آغاز کنید و کار با این سیستم کنترل ورژن پروژه را بیاموزید، بهترین کار این است که این فایل را دانلود کنید و همگام با آموزش، با این فایل کار کنید تا شیوه کار کردن با آن را بهتر یاد بگیرید.

مزایای آموزش گیت مبتدی

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

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

پشتیبانی از کار به صورت آفلاین و از بین بردن تأثیر سرعت اینترنت در روند کار: مزیت دیگر سرویس کنترل ورژن پروژه گیت، امکان کار روی فایل‌های پروژه به صورت آفلاین است. افرادی که می‌خواهند روی پروژه کار کنند، می‌توانند مخزن فایل‌ها را روی کامپیوتر خود کپی کنند، تغییرات مورد نظرشان را روی فایل‌ها اعمال نمایند و مجدداً فایل‌های تغییریافته را به مخزن برگردانند. در واقع با این کار، سرعت اینترنت هیچ تأثیری روی روند همکاری ندارد و افراد می‌توانند با خاطری آسوده، کارهای مربوط به پروژه خود را پیش ببرند.

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

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

آشنایی با کلیه اصطلاحات گیت با شرکت در دوره آموزش گیت مبتدی: با شرکت در دوره آموزش گیت مبتدی با واژه‌ها و اصطلاحات رایج حوزه گیت مثل مخزن (Repository)، شاخه (Branch)، کامیت (Commit)، فورک (Fork)، Pull و غیره آشنا می‌شوید و می‌توانید با نحوه عملکرد گیت و فرایندهای آن آشنا شوید. در بسیاری از دوره‌های آموزش گیت و گیت هاب، این واژه‌ها و اصطلاحات به صورت مفصل مورد بررسی قرار می‌گیرند؛ چون بدون دانستن این واژه‌ها نمی‌توان عملکرد گیت را درک کرد.

دوره آموزش گیت مبتدی مکتب خونه

در حال حاضر بسیاری از شرکت‌ها و گروه‌های حرفه‌ای که در سطح بین‌المللی فعالیت می‌کنند، برای پیشبرد و هماهنگی کارهای گروهی خود از گیت و ابزارهای آن مثل گیت هاب استفاده کنند؛ از این رو انواع و اقسام دوره آموزشی و Tutorial در زمینه گیت به بازار عرضه شده است. در صورتی که قصد دارید در یک دوره آموزش گیت مبتدی شرکت کنید، حتماً مراکز و اساتید حرفه‌ای و معتبر را برگزینید؛ زیرا این مراکز و افراد، می‌کوشند که بهترین محتوای آموزشی را در اختیارتان قرار دهند و شما را برای بهره‌برداری از گیت و ابزارهای آن توانمند کنند. 

پلتفرم آموزشی مکتب‌خونه، یکی از مراکز معتبر آموزشی که دوره آموزش Git را با تدریس آقای وحید نائینی در سایت خود عرضه کرده است. با شرکت در این دوره می‌توانید با گیت و شیوه کار با آن آشنا شوید. در این صفحه سرفصل‌های این دوره را به صورت کامل و به همراه جزئیات بیان کرده‌ایم. برای شرکت در این دوره حرفه‌ای به 10 ساعت زمان نیاز دارید که 5 ساعت مربوط به تماشای ویدیوهای دوره است و 5 ساعت به انجام تمرین‌ها و پروژه‌های دوره اختصاص دارد. در واقع دوره آموزش گیت مکتب خونه، یک دوره کاملاً عملی و پروژه‌محور است. 

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

 

آموزش برنامه نویسی اندروید

آموزش جاوا اسکریپت

آموزش مقدماتی زبان برنامه نویسی r

poster
  
برگزار کننده:  مکتب‌خونه
  
زمان مورد نیاز برای گذارندن دوره:  10 ساعت
مجموع محتوای آموزشی:  5 ساعت ویدئو - 5 ساعت تمرین و پروژه
 (قابل دانلود می‌باشد)
مهلت دوره:  4 هفته
  
حد نصاب قبولی در دوره:  70 نمره
فارغ‌التحصیل شدن در این دوره نیاز به ارسال تمرین‌ها و پروژه‌های الزامی دارد. 
organization-pic  گواهینامه این دوره توسط مکتب‌خونه ارائه می‌شود.
course-feature   گواهی‌نامه مکتب‌خونه course-feature   خدمات منتورینگ course-feature   پروژه محور course-feature   تمرین و آزمون course-feature   تالار گفتگو course-feature   تسهیل استخدام