دورهمی آنلاین گیت و گیتهاب
پنج شنبه ۱۸ دی ماه ۹۹ ساعت ۱۸
لینک اسکایپ :
https://join.skype.com/kKtHqX9CY8he
نیازی به عضویت در اسکایپ نیست و از طریق لینک بالا به صورت مهمان نیز میتوانید وارد شوید.
این دورهمی برای همه دوستان با هر سطح معلومات مفید واقع خواهد شد و با کمک همه دوستان حاضر در جلسه به سوالات پاسخ خواهیم داد.
#alithecodeguy #codewithali #git #github #vcs #gitlab
پنج شنبه ۱۸ دی ماه ۹۹ ساعت ۱۸
لینک اسکایپ :
https://join.skype.com/kKtHqX9CY8he
نیازی به عضویت در اسکایپ نیست و از طریق لینک بالا به صورت مهمان نیز میتوانید وارد شوید.
این دورهمی برای همه دوستان با هر سطح معلومات مفید واقع خواهد شد و با کمک همه دوستان حاضر در جلسه به سوالات پاسخ خواهیم داد.
#alithecodeguy #codewithali #git #github #vcs #gitlab
دورهمی آنلاین گیت و گیت هاب
لینک یوتیوب :
https://youtu.be/oMUM4fz-EHw
#alithecodeguy #codewithali #git #github
لینک یوتیوب :
https://youtu.be/oMUM4fz-EHw
#alithecodeguy #codewithali #git #github
This media is not supported in your browser
VIEW IN TELEGRAM
🔹فایل gitignore. چیست؟
✅یکی از فایلهای بسیار پر کاربرد در گیت هست. در ظاهر کمی ترسناک به نظر میرسه ولی در عین حال بسیار ساده و کاربردی هست. درواقع یک فایل ساده است که لیست تمام فایلهایی که نمیخواهیم به حالت stage دربیایند، در آن قرار میدهیم. به عبارت دیگر مشخص کننده مواردی است که گیت باید آنها را نادیده بگیرد. برای اینکه بدونید چطور از این فایل استفاده کنید پیشنهاد میکنم ویدئوی بالا رو مشاهده کنید.
@alithecodeguy #git #github
✅یکی از فایلهای بسیار پر کاربرد در گیت هست. در ظاهر کمی ترسناک به نظر میرسه ولی در عین حال بسیار ساده و کاربردی هست. درواقع یک فایل ساده است که لیست تمام فایلهایی که نمیخواهیم به حالت stage دربیایند، در آن قرار میدهیم. به عبارت دیگر مشخص کننده مواردی است که گیت باید آنها را نادیده بگیرد. برای اینکه بدونید چطور از این فایل استفاده کنید پیشنهاد میکنم ویدئوی بالا رو مشاهده کنید.
@alithecodeguy #git #github
اگر میخواید از یه مخزن گیت کلون بگیرید ولی هیستوریش رو نمیخواید ، از کتابخونه زیر میتونید استفاده کنید.
https://github.com/Rich-Harris/degit
#git #github #degit
https://github.com/Rich-Harris/degit
#git #github #degit
Media is too big
VIEW IN TELEGRAM
اگر تیمی کار میکنید باید با cherry_pick توی git آشنا باشید.
پیشنهاد میکنم این ویدیو رو ببینید.
#git #cherry_pick @alithecodeguy
پیشنهاد میکنم این ویدیو رو ببینید.
#git #cherry_pick @alithecodeguy
Media is too big
VIEW IN TELEGRAM
در ادامه پست قبل در خصوص cherry-pick ، پیشنهاد میکنم حتما این ویدیو رو هم ببینین
#git #cherry_pick @alithecodeguy
#git #cherry_pick @alithecodeguy
Media is too big
VIEW IN TELEGRAM
بدون ابزار ثانویه ، چه جوری چند نفر همزمان میتونن از طریق گیتهاب روی یک پروژه کار کنن؟
مشروح و با مثال عملی توی این ودیو توضیح داده.
این رو میتونید با cherry-pick که توی پست قبلی اومده ترکیب کنید و یک solution کامل بدست بیارید.
#git #team_work @alithecodeguy
مشروح و با مثال عملی توی این ودیو توضیح داده.
این رو میتونید با cherry-pick که توی پست قبلی اومده ترکیب کنید و یک solution کامل بدست بیارید.
#git #team_work @alithecodeguy
Media is too big
VIEW IN TELEGRAM
دوره کامل Git و Github از گوگل
-----------
مطالب و نکات آموزشی بیشتر در کانال تلگرامی @alithecodeguy
#git #course
-----------
مطالب و نکات آموزشی بیشتر در کانال تلگرامی @alithecodeguy
#git #course
Media is too big
VIEW IN TELEGRAM
اگر merge request بیاد برای پروژتون و شما بخواید ببینید که کدی که اومده کار میکنه یا نه چیکار میکنید؟ در واقع اگر بخواهید قبل از مرج زدن کد ریوو واقعی انجام بدید راهش چیه؟
راهش cherry pick هستش.
توی این ویدیو توضیح داده.
#git #cherry_pick
راهش cherry pick هستش.
توی این ویدیو توضیح داده.
#git #cherry_pick
این مخرن هم کلی template برای gitignore پروژه های مختلف با زبان های برنامه نویسی مختلف رو داخل خودش داره. زخم خوردههاش درک میکنن چی میگم.
https://github.com/github/gitignore
#tip #git
https://github.com/github/gitignore
#tip #git
GitHub
GitHub - github/gitignore: A collection of useful .gitignore templates
A collection of useful .gitignore templates. Contribute to github/gitignore development by creating an account on GitHub.
وقتی فولدر خالی درست میکنید یا فولدری درست میکنید که فایل ترک نشده توش دارید ، گیت این فولدر رو ترک نمیکنه یعنی وقتی پوش کنید روی ریپوتون ، نفر بعدی که کلون بگیره اون فولدر رو نداره. برای حل این مشکل میتونید فایل خالیای با اسم .gitkeep بسازید. (دات گیت کیپ)
#git
#git
تفاوت revert و reset در git
git revert
یک کامیت جدید ایجاد میکند که تغییرات کامیت مشخصشده را برعکس (undo) میکند
git reset
شاخه (branch) را به یک نقطه قبلی در تاریخچه برمیگرداند. این یعنی تاریخچه بازنویسی میشود.
#git #interview
git revert
یک کامیت جدید ایجاد میکند که تغییرات کامیت مشخصشده را برعکس (undo) میکند
git revert abc123
git reset
شاخه (branch) را به یک نقطه قبلی در تاریخچه برمیگرداند. این یعنی تاریخچه بازنویسی میشود.
git reset --hard abc123
#git #interview
تفاوت git rebase و git merge در Git اساسی است، چون هر دو برای ترکیب تغییرات استفاده میشوند ولی نحوهی ادغام و تاریخچه کاملاً فرق دارد.
--------------------------
💡 git merge
• چه میکند؟
تغییرات دو شاخه را با هم ادغام میکند و یک کامیت جدید (merge commit) ایجاد میکند.
• تاریخچه حفظ میشود به صورت شاخهای (branching history).
• مزیت: سابقه واقعی و ترتیب زمانی کامیتها حفظ میشود.
• عیب: تاریخچه ممکن است شلوغ شود (کامیتهای Merge زیاد).
نتیجه:
A---B---C (main)
\
D---E (feature)
\
M (merge commit)
--------------------------
💡git rebase
• چه میکند؟
کل کامیتهای شاخهی فعلی را بر اساس شاخهی هدف بازنویسی میکند (history rewrite).
• کامیتها را جوری قرار میدهد که انگار از همان ابتدا بر اساس آخرین کامیت شاخهی هدف ساخته شدهاند.
• مزیت: تاریخچه خطی (linear history) و تمیز.
• عیب: بازنویسی تاریخچه خطرناک است (نباید در شاخههای اشتراکی استفاده شود).
نتیجه:
A---B---C---D'---E' (feature)
#interview #git
--------------------------
💡 git merge
• چه میکند؟
تغییرات دو شاخه را با هم ادغام میکند و یک کامیت جدید (merge commit) ایجاد میکند.
• تاریخچه حفظ میشود به صورت شاخهای (branching history).
• مزیت: سابقه واقعی و ترتیب زمانی کامیتها حفظ میشود.
• عیب: تاریخچه ممکن است شلوغ شود (کامیتهای Merge زیاد).
git checkout main
git merge feature
نتیجه:
A---B---C (main)
\
D---E (feature)
\
M (merge commit)
--------------------------
💡git rebase
• چه میکند؟
کل کامیتهای شاخهی فعلی را بر اساس شاخهی هدف بازنویسی میکند (history rewrite).
• کامیتها را جوری قرار میدهد که انگار از همان ابتدا بر اساس آخرین کامیت شاخهی هدف ساخته شدهاند.
• مزیت: تاریخچه خطی (linear history) و تمیز.
• عیب: بازنویسی تاریخچه خطرناک است (نباید در شاخههای اشتراکی استفاده شود).
git checkout feature
git rebase main
نتیجه:
A---B---C---D'---E' (feature)
#interview #git