TRSH2389
کاربر فعال

- ارسالها
- 51
- امتیاز
- 355
- نام مرکز سمپاد
- SHM
- شهر
- TBZ
- سال فارغ التحصیلی
- 1407
آموزش گیت (بخش اول) :
خب سلام راستشو بخواین یه دوره آموزش گیت و گیت هاب رو می گذروندم و چون خودم اینطوریم که اگه یه چیزی که یاد گرفتم رو به بقیه هم یاد بدم خیلی خوب اون مسئله تو ذهنم جا افتاده میشه گفتم بیام اینجا و نکاتی که یاد میگیرم رو با شما هم در میون بذارم تا هم خودم بهتر یاد بگیرم و هم اگه یکی هم علاقه داشت شاید این یه تلنگری شد براش که بره سمت علاقش :)
اولش باید اینو بدونیم که چون یکی از مهم ترین عناصر کارایی مثل برنامه نویسی و ... همون کار تیمی هست خیلی مهمه که با این ابزار ها از همون اول آشنا بشیم که بتونیم توی پروژه های گروهی شرکت کنیم و با افراد ماهر و با تجربه در این زمینه ارتباط و کانکشن برقرار کنیم و کلی فرصت دیگه بدست بیاریم.
خب اولین مسئله اینه که اصلا گیت چی هست؟
گیت یه ابزاره و یه نرم افزار متن باز برای کنترل ورژن توضیع شده ی یه پروژه و یه نرم افزار هست که می تونیم باهاش به راحتی تغییرات پروژمون رو ردیابی کنیم. چون توی برنامه نویسی وقتی یه سری کدا رو می خوایم بهبودشون بدیم و ورژن جدید برنامه مونو ریلیزش کنیم هیچوقت نمیایم کدای قبلی رو حذفشون کنیم چون ممکنه در ادامه به کدای قبلی نیاز داشته باشیم یا اصلا بفهمیم راهو اشتباه اومدیم و باید چند مرحله برگردیم عقب. در این حالته که ابزار هایی مثل گیت به کارمون میان
بعد اینکه فهمیدیم که گیت چیه باید به صورت عملی یادش بگیریم و اونم نیازمند نصب این ابزار روی سیستممون و استفاده ازش هست.
خب پس قدم اولمون نصب گیت روی سیستممون هست که مسلما همتون بلدید چطوری نصبش کنید و فقط کافیه که به سایت گیت برید و از اونجا بسته به سیستمتون فایلو دانلودش کنین و مثل همه اپای دیگه نصبش کنین.
تا اینجا پس گیت رو دانلود و نصبش کردیم و روی سیستممون داریمش. حالا کارمون اینه که میایم و یه دایرکتوری (فولدر) توی سیستممون ایجاد می کنیم و فایلای مورد نیاز پروژمون رو در اون قرار میدیم و وقتی که همه ی فایلای پروژه رو تو دایرکتوری مورد نظرمون جمعش کردیم می تونیم کار با گیت رو شروع کنیم. برای اینکار مثل تصویر میایم رایت کلیک می کنیم داخل فولدرمون و روی گزینه ی Open Git Bash here کلیک می کنیم. با این کار خط فرمان گیت برامون باز میشه و می تونیم کارامونو با استفاده از دستوراتش انجام بدیم.
قدم بعدی مون اینه که یه مخزن یا اصطلاحا ریپازیتوری برای پروژه ی گیتمون درست کنیم که اونجا ورژن های پروژه، تغییراتش و سایر کارامون ذخیره بشن. برای اینکار میایم و از این دستور استفاده می کنیم :
این کد میاد یه ریپازیتوری اولیه برای پروژه مون مقدار دهی (initialise) میکنه.
اگه دقت کنید یه دایرکتوری به اسم .git برامون ساخته شد که یه صورت پیش فرض توسط ویندوز هیدن فایل هست و باید برای دیدنش گزینه ی Show Hidden items رو بزنین. این فایل ساخته شده همون ریپازیتوری یا مخزن پروژمون هست که همه کارایی که انجام میدیم اینجا ذخیره خواهند شد.
حالا برای نگاه کردن به وضعیت ریپازیتوری مون باید از دستور زیر استفاده کنیم :
این دستور میاد وضعیت فایلا رو بهمون نشون میده.
همونطوری هم که توی تصویر می بینین فایل پایتونی که توی داریکتوریمون داریم وارد ریپازیتوریمون نشده و این پیامو از طرف گیت دریافتش کردیم. برای اینکه این فایلا رو وارد ریپازیتوری بکنیم باید از دستور add استفاده کنیم که به دو شکل میشه ازش استفاده کرد :
(اسم فایل من My_Project.py بود به همین خاطر از اون استفاده کردم شما باید اسم فایل خودتونو بنویسین)
در این حالت گیت میاد و فقط فایل خودمونو وارد مخزن میکنه و اگه فایل دیگه ای توی دایرکتوری مون باشه با اون کاری نداره.
حالت دوم استفاده از این دستور اینه که بنویسیم :
در این حالت برنامه میاد و کل فایلای دایرکتوری مونو که وارد مخزن نشدن رو اضافه می کنه و بسته به نیازمون باید از یکی از این دو دستور استفاده کنیم.
حالا وقتی که وضعیت ریپازیتوری مونو بررسی می کنیم با این پیام مواجه میشیم :
الان می بینیم که فایل های دایرکتوری همه اد شدن به مخزن پروژمون
اینجا یه سوال پیش میاد. اگه بخوایم یه فایلی که اضافه کردیم رو حذفش کنیم باید چیکار کنیم؟ خب در این حالت باید از دستور زیر استفاده کنیم :
(دوباره باید به جای My_Project.py اسم فایل خودتونو بنویسین :) )
این دستور میاد فایل مورد نظرتون رو توی ریپازیتوری تون کش شده پاک میکنه و برای برگردوندنشون باید مثل قبل از دستور add استفاده کنیم.
بعضی وقتا هم ممکنه یه سری تغییراتی توی فایلمون ایجاد کنیم که در اون موقع هنگام گرفتن وضعیت ریپازیتوری مون چنین پیامی رو می بینیم :
این پیام نشون میده که یه سری تغییراتی توی فایلمون ایجاد شده که توی ریپازیتوری ذخیره نشده. بعضی وقتا ما می خوایم ببینیم این تغییراتی که رو فایلمون انجام شده چیا هستن که راه حل اونم استفاده از دستور diff هست این دستور فقط تغییرات رو داخل خط فرمان بهمون نشون میده.
برای اعمال تغییرات روی ریپازیتوری هم دو راه وجود داره که اولی همون استفاده از دستور add هست که اگه بیایم دوباره فایلمون رو ادش کنیم تغییرات روی فایل مخزن اعمال میشن.
روش دوم رو هم بعد گفتن دستور کامیت بهتون میگم :)
خب حالا که مطمئن شدیم فایل مون درسته، از یه دستوری به نام commit استفاده می کنیم که تغییراتمون توی ریپازیتوری مون ذخیره بشن (در واقع قبل این کار فایل ها فقط توی حافظه کش مخزنمون بودن) :
توی بخشی که داخل دابل کوتیشن نوشتم !Your Message باید پیامتون و تغییراتی که توی فایل اعمال کردین رو بنویسین چون وقتی که یه نفری می خواد تغییراتی که روی پروژه اش ایجاد کردین رو متوجه بشه میاد این پیاماتونو می خونه پس باید واضح، کامل و دقیق بنویسین که چه کارایی کردین.
خب بعد کامیت کردن یعنی کل تغییرات مورد نظرتون داخل ریپازیتوری تون اعمال شده.
و حالا به عنوان نکته ی آخر، اون روش دومی که بهتون گفتم اینه که می تونین به جای اد کردن استفاده کنین اینه که وقتی آخرین تغییر فایل رو انجام دادین و بعدش می خواین کامیتش کنین می تونین مستقیما از این دستور استفاده کنید (یعنی یه بار اد و یه بار کامیتش نکنید مستقیما کامیت شه)
در این دستور دَش a همون مفهوم add رو می رسونه.
خب تا اینجا بهتون گفتم بازم اگه خواستین و وقت کردم ادامه اش رو هم براتون میگم.
امیدوارم که تونسته باشم یه چیزایی هر چند کم بهتون اضافه کنم.
فعلا :)
خب سلام راستشو بخواین یه دوره آموزش گیت و گیت هاب رو می گذروندم و چون خودم اینطوریم که اگه یه چیزی که یاد گرفتم رو به بقیه هم یاد بدم خیلی خوب اون مسئله تو ذهنم جا افتاده میشه گفتم بیام اینجا و نکاتی که یاد میگیرم رو با شما هم در میون بذارم تا هم خودم بهتر یاد بگیرم و هم اگه یکی هم علاقه داشت شاید این یه تلنگری شد براش که بره سمت علاقش :)
اولش باید اینو بدونیم که چون یکی از مهم ترین عناصر کارایی مثل برنامه نویسی و ... همون کار تیمی هست خیلی مهمه که با این ابزار ها از همون اول آشنا بشیم که بتونیم توی پروژه های گروهی شرکت کنیم و با افراد ماهر و با تجربه در این زمینه ارتباط و کانکشن برقرار کنیم و کلی فرصت دیگه بدست بیاریم.
خب اولین مسئله اینه که اصلا گیت چی هست؟
گیت یه ابزاره و یه نرم افزار متن باز برای کنترل ورژن توضیع شده ی یه پروژه و یه نرم افزار هست که می تونیم باهاش به راحتی تغییرات پروژمون رو ردیابی کنیم. چون توی برنامه نویسی وقتی یه سری کدا رو می خوایم بهبودشون بدیم و ورژن جدید برنامه مونو ریلیزش کنیم هیچوقت نمیایم کدای قبلی رو حذفشون کنیم چون ممکنه در ادامه به کدای قبلی نیاز داشته باشیم یا اصلا بفهمیم راهو اشتباه اومدیم و باید چند مرحله برگردیم عقب. در این حالته که ابزار هایی مثل گیت به کارمون میان
بعد اینکه فهمیدیم که گیت چیه باید به صورت عملی یادش بگیریم و اونم نیازمند نصب این ابزار روی سیستممون و استفاده ازش هست.
خب پس قدم اولمون نصب گیت روی سیستممون هست که مسلما همتون بلدید چطوری نصبش کنید و فقط کافیه که به سایت گیت برید و از اونجا بسته به سیستمتون فایلو دانلودش کنین و مثل همه اپای دیگه نصبش کنین.
تا اینجا پس گیت رو دانلود و نصبش کردیم و روی سیستممون داریمش. حالا کارمون اینه که میایم و یه دایرکتوری (فولدر) توی سیستممون ایجاد می کنیم و فایلای مورد نیاز پروژمون رو در اون قرار میدیم و وقتی که همه ی فایلای پروژه رو تو دایرکتوری مورد نظرمون جمعش کردیم می تونیم کار با گیت رو شروع کنیم. برای اینکار مثل تصویر میایم رایت کلیک می کنیم داخل فولدرمون و روی گزینه ی Open Git Bash here کلیک می کنیم. با این کار خط فرمان گیت برامون باز میشه و می تونیم کارامونو با استفاده از دستوراتش انجام بدیم.

قدم بعدی مون اینه که یه مخزن یا اصطلاحا ریپازیتوری برای پروژه ی گیتمون درست کنیم که اونجا ورژن های پروژه، تغییراتش و سایر کارامون ذخیره بشن. برای اینکار میایم و از این دستور استفاده می کنیم :
Git:
git init
این کد میاد یه ریپازیتوری اولیه برای پروژه مون مقدار دهی (initialise) میکنه.

اگه دقت کنید یه دایرکتوری به اسم .git برامون ساخته شد که یه صورت پیش فرض توسط ویندوز هیدن فایل هست و باید برای دیدنش گزینه ی Show Hidden items رو بزنین. این فایل ساخته شده همون ریپازیتوری یا مخزن پروژمون هست که همه کارایی که انجام میدیم اینجا ذخیره خواهند شد.
حالا برای نگاه کردن به وضعیت ریپازیتوری مون باید از دستور زیر استفاده کنیم :
Git:
git status
این دستور میاد وضعیت فایلا رو بهمون نشون میده.

همونطوری هم که توی تصویر می بینین فایل پایتونی که توی داریکتوریمون داریم وارد ریپازیتوریمون نشده و این پیامو از طرف گیت دریافتش کردیم. برای اینکه این فایلا رو وارد ریپازیتوری بکنیم باید از دستور add استفاده کنیم که به دو شکل میشه ازش استفاده کرد :
Git:
git add My_Project.py
(اسم فایل من My_Project.py بود به همین خاطر از اون استفاده کردم شما باید اسم فایل خودتونو بنویسین)
در این حالت گیت میاد و فقط فایل خودمونو وارد مخزن میکنه و اگه فایل دیگه ای توی دایرکتوری مون باشه با اون کاری نداره.
حالت دوم استفاده از این دستور اینه که بنویسیم :
Git:
git add .
در این حالت برنامه میاد و کل فایلای دایرکتوری مونو که وارد مخزن نشدن رو اضافه می کنه و بسته به نیازمون باید از یکی از این دو دستور استفاده کنیم.

حالا وقتی که وضعیت ریپازیتوری مونو بررسی می کنیم با این پیام مواجه میشیم :

الان می بینیم که فایل های دایرکتوری همه اد شدن به مخزن پروژمون
اینجا یه سوال پیش میاد. اگه بخوایم یه فایلی که اضافه کردیم رو حذفش کنیم باید چیکار کنیم؟ خب در این حالت باید از دستور زیر استفاده کنیم :
Git:
git rm --cached My_Project.py
(دوباره باید به جای My_Project.py اسم فایل خودتونو بنویسین :) )
این دستور میاد فایل مورد نظرتون رو توی ریپازیتوری تون کش شده پاک میکنه و برای برگردوندنشون باید مثل قبل از دستور add استفاده کنیم.
بعضی وقتا هم ممکنه یه سری تغییراتی توی فایلمون ایجاد کنیم که در اون موقع هنگام گرفتن وضعیت ریپازیتوری مون چنین پیامی رو می بینیم :

این پیام نشون میده که یه سری تغییراتی توی فایلمون ایجاد شده که توی ریپازیتوری ذخیره نشده. بعضی وقتا ما می خوایم ببینیم این تغییراتی که رو فایلمون انجام شده چیا هستن که راه حل اونم استفاده از دستور diff هست این دستور فقط تغییرات رو داخل خط فرمان بهمون نشون میده.
Git:
git diff

برای اعمال تغییرات روی ریپازیتوری هم دو راه وجود داره که اولی همون استفاده از دستور add هست که اگه بیایم دوباره فایلمون رو ادش کنیم تغییرات روی فایل مخزن اعمال میشن.
روش دوم رو هم بعد گفتن دستور کامیت بهتون میگم :)
خب حالا که مطمئن شدیم فایل مون درسته، از یه دستوری به نام commit استفاده می کنیم که تغییراتمون توی ریپازیتوری مون ذخیره بشن (در واقع قبل این کار فایل ها فقط توی حافظه کش مخزنمون بودن) :
Git:
git commit -m "Your Message!"
توی بخشی که داخل دابل کوتیشن نوشتم !Your Message باید پیامتون و تغییراتی که توی فایل اعمال کردین رو بنویسین چون وقتی که یه نفری می خواد تغییراتی که روی پروژه اش ایجاد کردین رو متوجه بشه میاد این پیاماتونو می خونه پس باید واضح، کامل و دقیق بنویسین که چه کارایی کردین.

خب بعد کامیت کردن یعنی کل تغییرات مورد نظرتون داخل ریپازیتوری تون اعمال شده.
و حالا به عنوان نکته ی آخر، اون روش دومی که بهتون گفتم اینه که می تونین به جای اد کردن استفاده کنین اینه که وقتی آخرین تغییر فایل رو انجام دادین و بعدش می خواین کامیتش کنین می تونین مستقیما از این دستور استفاده کنید (یعنی یه بار اد و یه بار کامیتش نکنید مستقیما کامیت شه)
Git:
git commit -a -m "Your Message!"
در این دستور دَش a همون مفهوم add رو می رسونه.
خب تا اینجا بهتون گفتم بازم اگه خواستین و وقت کردم ادامه اش رو هم براتون میگم.
امیدوارم که تونسته باشم یه چیزایی هر چند کم بهتون اضافه کنم.
فعلا :)