گيت چيست ؟
گيت چيست ؟
گيت يک ورژن کنترلر است که در سال 2005 توسط توروالدز ساخته شده است . شما ميتوانيد فرآيند توسعه ي يک پروژه را با گيت کنترل و مديريت کنيد .
با گيت ميتونيد هر تغييري در نسخه هاي مختلف را بررسي کنيد و در صورت تاييد آنها را روي پروژه ي نهايي اعمال کنيد .
فرض کنيد شما روي يک سايت کار ميکنيد که با زبان پايتون است و در شرکت شما شخص ديگري قصد دارد يک ابزاري را بصورت مستقل براي سايت شما کدنويسي کند و در نهايت به شما تحويل دهد و شما آنرا به درون پروژه ي اصلي متصل کنيد ولي چطور !!؟ اين اتفاق به سادگي گفتن نيست .
اين سناريو را در نظر بگيريد .
يک پروژه ي واحد به نام A در روز 1 شروع ميشود روز 2 يک فردي ميخواهد ابزاري به نام B را به پروژه ي A کدنويسي کند .
برنامه نويسي B سه روز طول ميکشد ولي در طول سه روز پروژه ي A هم قرار نيست متوقف بشه !
اينطوري دو شاخه ي مستقل در حال توسعه است ممکن است برنامه نويس B چيزي را که دو روز پيش ديده باشد متفاوت باشد چون برنامه نويس روي پروژه ي A کار کرده است .
ميبينيد که در مثال ما فقط دو نفر و دو توسعه ي موازي در نظر گرفته شده است حالا فرض کنيد يک پروژه توسط صد نفر نوشته ميشه و دويست بخش مستقل داره !!!
اينجاست که ديگه برنامه ها از تفکر وتمرکز انسان خارج ميشود و بايد ابزاري باشد تا بتواند اين فرايند را بخوبي مديريت و کنترل کند .
اين ابزار گيت است و در اصل هم براي مديريت ورژن هاي لينوکس توسعه داده شده است که بعدا مورد استقبال همه ي برنامه نويسان جهان قرار گرفته است .
من براي يادگيري مفاهيم و اصل گيت از اين دوره ي آموزش گيت استفاده کردم عالي بود و پيشنهاد ميکنم اگر به دنبال آموزش گيت هستيد حتما تهيه اش کنيد .
ريپوزيتوري ( repository ) در git چيست ؟
ريپوزيتوري در گيت چيست
هر پروژه که بخواهد با گيت مديريت شود بايد به يک ريپوزيتوري منتقل شود . ريپوزيتوري يک مخزن است مخزن نهايي هر آنچه که ميخواهيد از تغييرات و روند يک پروژه روي پروژه نهايي اعمال کنيد .
ريپوزيتوري دو نوع است :
1 - ريپوزيتوري لوکال که روي کامپيوتر يا روي يک فلش يا سي دي يا هر چيزي که ديگر دسترسي از طريق شبکه نيست
2 - ريپوزيتوري ريموت که معمولا روي يک سرور يا هاست قرار ميگيرد و بقيه بهش دسترسي دارند مثل گيتهاب و گيت لب و … که اين سرويس را به شما ميدهد و ريپوزيتوري هاي شما را ميزباني ميکند .
گيت هاب و گيت لب چيست ؟؟؟
گيتهاب يک سرويس دهنده هست که به شما اجازه ميدهد بصورت رايگان ريپوزيتوري هاي گيت خود را بصورت آنلاين ارائه دهيد .
گيتهاب يک سري مفاهيم و ابزارها دارد که بايد کار با آنها را ياد بگيريد تا بتوانيد از امکانات آن جهت مديريت ريپوزيتوري هاي خود استفاده کنيد .
البته الان گيتهاب تقريبا تبديل به يک جامعه ي مجازي برنامه نويسان شده است تا يک هاستينگ خالي ريپوزيتوري هاي گيت …
گيت لب هم همين کارها را ميکند و تفاوتش اين است که خود گيت لب قابل دانلود و پياده سازي روي سرورهاي شخصي است .