Android & Flutter
آموزش اتصال سورس اندروید استودیو به گیت لب و گیت هاب به دو روش
با سلام و وقت بخیر خدمت شما دوستان عزیز
قصد داریم توی این مقاله در مورد چند مسئله صحبت کنیم
گیت چیه؟فرق گیت هاب و گیت لب چیه؟چرا باید از گیت استفاده کنیم؟
اموزش اتصال سورس اندروید استودیو به گیت با دو روش:
وقتی ما به عنوان برنامه نویس شروع به کار روی یک پروژه میکنیم،ممکن هست ما بخوایم تغییرات جدیدی رو روی پروژه اعمال کنیم و نخوایم نسخه قبلی از دست بره و ممکنه وقتی تغییرات رو انجام میدیم پروژه خراب بشه و نتونیم برگردیم به نسخه اصلی و پایدار برناممون
خوب کاری که ما اینجا انجام میدیم چی هست ..میایم یک کپی از پروژه اصلی میسازیم و روی اون کار میکنیم
حالا ممکنه بخوایم تغییرات زیادی رو اعمال کنیم ،همینجوری باید پشت سر هم کپی بگیریم که ممکنه بعد یه مدت بگذره و خیلی به هم ریخته باشه و ندونیم پروژه اصلیمون کجاست و واقعا از این وضعیت کلافه بشیم
و یا اینکه مثلا ممکنه یه دفعه هارد ما (خدایی نکرده D:) بسوزه .. و فایل پروژه از دست بره
و یا وقتی با یه تیم کار میکنیم مجبوریم هر تغییری میدیم از طریق ایمیل و یا تلگرام یا هرطریقی پروژه تغییر یافته رو برای همکارمون بفرستیم که اونا هم اگه بخوان تغییر بدن و برای ما بفرستن ..خودتون حساب کنید که چه بی نظمی پیش میاد
با این موارد که گفتم پس نگهداری و توسعه پروژه سخت میشه.حالا چاره چیه؟
اینجا یه مفهوم میاد وسط به اسم git
ابتدا بگم دوستان git و Gitlab و github یکی نیستن
گیت (Git) یک سیستم کنترل نسخه (version control) رایگان هست که gitlab و github پلتفرم های میزبانی آنلاین برای خدمات مختلف هستن که از git استفاده میکنن..پس اشتباه نکنید
گیت چه فایده ای برای ما داره؟
گیت یه بستر هست که باعث میشه مشکلاتی که بالا بهش اشاره کردم تا حدود خیلی زیادی رفع بشه
برای مثال: اینکه بر بستر نت هست و هرتغییری بدیم دیگران راحت میتونن تغییرات رو بگیرن بدون ارسال از طریق تلگرام و ...
میتونیم بدون دردسر نسخه های مختلفی از کد داشته باشیم و هر تغییری که دادیم به راحتی به پروژه اصلی اضافه کنیم
و یا اینکه بدونیم چه کسی توی تیم چه تغییراتی رو کد اعمال کرده
و مزایای زیاد دیگه ای
حتی میتونیم بدون استفاده از سرویس های گیت هاب و گیت لب از گیت استفاده کنیم که البته محیطش ترمینال هست و ما بایستی اشنا باشیم.
خوب تفاوت گیت هاب و گیت لب چیه از کدوم استفاده کنیم؟
گیت هاب بستر بزرگتری هست و اکثر پروژه های اوپن سورس رو توی این بستر میتونید پیدا کنید متاسفانه چند ماه پیش کاربران ایرانی رو برای ساختن پروژه شخصی محدود کرد و نمیتونیم برای شرکتمون یا حتی پروژه های شخصی خصوصی ازش استفاده کنیم و برای پروژه های پابلیکی که همه بهش دسترسی دارن میتونیم ازش استفاده کنیم
ولی توی گیت لب به راحتی میتونیم پروژه های شخصیمون رو بسازیم که دیگران نتونن دسترسی داشته باشن
و میحطشون هم خیلی شبیه هم هست و بایستی برای استفاده ثبت نام کنین توی سایت هاشون به ادرس:
gitlab.com and github.com
خوب امیدوارم تا الان ضرورت استفاده از گیت رو برای شما جا انداخته باشم ..البته این قسمت کمی از مزایاش بود،میتونین بیشتر در موردش تحقیق کنین
خوب بریم سراغ بحث اصلیمون که چطور پروژه اندروید استودیو رو به گیت لب اضافه کنیم
چون سرویس گیت لب این روزها بیشتر استفاده میشه، طبق گیت لب پیش میریم ولی واقعا تفاوتی به اون صورت ندارن و خیلی شبیه هم هستن به راحتی میتونین با این روش کدتون رو توی گیت هابم قرار بدین
به دو روش میخوایم توضیح بدیم :روش اول با استفاده از محیط ترمینال که خیلی ساده هست و با چند خط کد میتونیم پروژمون رو اضافه کنیم
و روش دوم استفاده از محیط گرافیکی برای این کار هست
که بهتره با هر دو روش آشنا باشین چون بعدا ممکنه بهش نیاز پیدا کنین
بریم سراغ روش اول:
ابتدا به این آدرس میریم و بسته به سیستم عامل گیت رو دانلود میکنیم(ما اینجا برای ویندوز استفاده میکنیم)
سایت:https://git-scm.com/downloads
خوب وقتی که دانلود کردیم مثل همه برنامه های ویندوز به راحتی نصبش میکنیم و وقتی که نصب کامل شد روی صفحه یا هرجا کلیک راست میکنیم این دو گزینه رو میبینیم:
Git gui and git Bash
این نشون میده که گیت ما نصب شده
مرحله بعدی این هست که یک پروژه توی سایت گیت لب بسازیم که بتونیم سورسمون رو اینجا آپلود کنیم
خوب حالا میریم توی سایت گیت لب ثبت نام میکنیم و وقتی ثبت نام کردیم اینجور محیطی رو میبنیم
توی قسمت پروژه ها بالای صفحه گزینه new project رو میزنیم و یک صفحه برای ما باز میشه
بدین صورت:
اون قسمت بالا اسم پروژه رو تعیین میکنیم به صورت دلخواه
و قسمت description توضیحات دلخواه در صورت تمایل میتونیم برای پروژمون بنویسیم
و در قسمتvisibility level تعیین میکنم پروژمون خصوصی هست یا عمومی(ما اینجا خصوصی در نظر میگیریم)
و اخرین گزینه میگه که فایل readme رو اضافه کنم برای توضیحات که ما اینجا تیکش رو غیر فعال نگه میداریم
خوب روی create project کلیک میکنیم و پروژه ما ساخته میشه و این صفحه رو برای ما میاره:
خوب اگه صفحه رو اسکرول کنیم به پایین دقیق به ما توضیح میده که با چه کدی پروژه رو از سیستمون به گیت لب اضافه کنیم بدون هیچگونه نیاز به اینکه مطالب غیر از اون رو بلد باشید، ولی ما مرحله به مرحله جلو پیش میریم که دقیق جا بیوفته
خوب پروژه اندروید استودیو ما ساخته شده از قبل و یا جدید میسازیم و داخل فولدر پروژمون میریم و روی صفحه ای که پروژمون هست کلیک راست میکنیم گزینهgit bash here رو کلیک میکنیم که محیط بش و محیط کد برای ما باز بشه
خوب وقتی این محیط برای ما باز شد باید چند دستور رو بنویسیم و اجرا کنیم که فایل هامون به گیت لب اضافه شه
اولین دستور : git init رو تایپ میکنیم و اکی میزنیم ،این دستور باعث میشه یک سری فایل که مربوط به استفاده از git توی برنامه هست رو بسازه که یه فولدر به اسم git. هم اضافه میکنه
دومین دستور: . git add که فایل هامون رو به گیت اضافه میکنه و نقطه یعنی همه فایل هامون رو اضافه کن
سومین دستور : "git commit -m "FirstCommit که فایل هامون رو به اصطلاح کامیت میکنیم . m- هم مخفف message هست. این پیامیه که میگیم مثلا من فلان کار رو در برنامه انجام دادم..مسیج میتونه هرچیزی باشه
چهارمین دستور: (git remote add origin (project address اون قسمت پروژکت آدرس که نوشتم باید آدرس فایل گیت رو بدون استفاده از () بنویسید که خود گیت وقتی پروژه ساخته میشه اون ادرس رو به ما میده که برای من به این صورته و شما میتونید همون رو کپی کنید که بعد ساخت پروژه به شما میده توی گیت لب
git remote add origin https://gitlab.com/imanyarahmadi/imanproject.git
و اخرین دستور مربوط به پوش کردن فایل ها توی گیت لب هست که این دستور رو رو مینویسید:
git push -u origin master
وقتی این رو وارد میکنیم خود به خود یه پنجره باز میشه که باید یوزر و پسوورد گیت لبمون رو به ترتیب وارد کنیم که وارد اکانتمون بشه و تموم میشه کار ما، حالا پروژه اندروید استودیو ما به گیت متصل شد و فایل هامون هم آپلود شد
اگه توی قسمت پروژه سایت گیت لب بریم میبینیم که به این صورت اضافه شده
خوب خیلی راحت با 4 5 دستور پروژمون رو اضافه کردیم به گیت لب
حالا از این به بعد هر تغییری توی پروژه دادیم میتونیم یا از محیط کامند و یا توی منو اندروید استودیو
از سربرگ vcs روی commit کلیک میکنیم و وقتی روی کامیت کلیک کردیم این پنجره برای ما باز میشه
که خودش گزینه های مختلفی داره و توضیحات زیادی که میتونید سرچ کنید در موردشون
ولی پنجره وسط که نوشته کامیت مسیج ما اونجا مثل محیط کامندلاین مسیج مورد نظر رو اضافه میکنیم مثلا من یه toast به برنامه اضافه کردم و مینویسم toast add یا هرچی
و توی پنجره اخری هم دقیقا برنامه رو قبل و بعد تغییرات به ما نشون میده مثلا توی پنجره سمت راستی toast رو به رنگ سبز نشون میده و میگه این اضافه شده
و وقتی مسیج رو نوشتیم اون گزینه commit پایین صفحه رو کلیک میکنیم و تغییر ما commitمیشه
و اخرین کار هم این هست که کدهامون رو push کنیم
که از منوی vcs->git->push که در تصویر زیر میبینید کلیک میکنیم و یه پنجره باز میشه که تغییرمون رو با زدن روی گزینه push پایین صفحه اعمال میکنیم
و تمام حالا وقتی دوباره بریم توی سایت میبینیم که تغییرات اضافه شده و اون مسیجی که نوشتیم رو نشون میده به اسم toast add ...دوتا گزینه بالایی تصویر زیر
از این به بعد هروقت تغییری دادیم میتونیم به راحتی با این دوکار بالا تغییرات رو ذخیره کنیم
و تمام ...
و خواستم بدون استفاده از محیط ترمینال اموزش بدم که دیدم سایت اندروید ریور آموزش داده و دوباره باز نویسی میشه اگه بخوام مطالب رو بنویسم که لینکش رو میزارم میتونید ببینید:
https://androidriver.ir/connect-android-source-to-gitlab/
که البته توصیه میکنم با محیط ترمینال هم که بالا توضیح دادم کار کنید که آشنا بشید
و یک نکته خیلی مهمی بگم که گیت خیلی وسیع هست و اصطلاحات زیادی داره که حتما درموردش مطالعه کنید ولی نمیخواد که همشو یادبگیرین در حدی که به کارتون مربوطه
مثلا کامیت و پوش و مرج و پول و .....
یا اینکه برنچ چیه توی گیت و چطور برنچ بسازیم ......البته برنج نیست D: و branch هست
امیدوارم که تونسته باشیم به خوبی توضیح بدم و اگه جایی هم نیاز به تغییر داره یا توضیح بیشتر ممنون میشم بگید
واگه دوست داشتین لایک و کامنت یادتون نره
موفق باشین
یاعلی
مطلبی دیگر از این انتشارات
RabbitMQ چیست ؟ چرا از آن استفاده کنیم ؟
مطلبی دیگر از این انتشارات
اصول Solid
مطلبی دیگر از این انتشارات
بهبود مهارتهای برنامهنویسی: راهکارها و روشها