NINJA_LEARN_IR Telegram 787
خب خب خب، git reset🔄
توی گیت، دستور reset مثل یه دکمه ی سفر در زمانه که مارو به گذشته ی پروژه میبره. اما چند حالت مختلف داره و بسته به اینکه کدوم یکی از این حالت ها استفاده بشن میتونه روی تاریخچه ی پروژه هم تاثیر بزاره.

Mixed🟡
این حالت پیش فرض برای دستور reset هست. HEAD رو به کامیت مشخص شده برمیگردونه. تغییرات بعد از اون کامیت از Stage خارج میشن(unstaged) ولی تغییرات هنوز توی فایل ها هستن. برای موقعی که میخواین تغییرات باقی بمونن ولی توی Stage نباشن خوبه.
شکل کلی دستور ریست:
git reset <--mode> <commit-id>

دستور ریست با حالت mixed:
git reset --mixed HEAD~1
git reset HEAD~1 # هست mixed حالت پیش فرض همین

دستور بالا آخرین کامیت رو پاک میکنه، تغییرات هنوز وجود دارن ولی دیگه توی Stage نیستن.

Soft🔵
فقط HEAD رو برمیگردونه به کامیت مشخص شده. تغییرات بعد از اون کامیت رو توی Stage نگه میداره. زمانی استفاده میشه که بخوایم کامیت رو حذف کنیم ولی تغییرات باقی بمونن، برای commit مجدد یا اصلاح پیام.
git reset --soft HEAD~1

به طور مثال دستور بالا آخرین کامیت رو پاک میکنه و تغییرات رو توی Staging قرار میده.

Hard🔴
توی این حالت HEAD به کامیت مشخص شده برمیگرده، Staging area و فایل هارو کاملا با کامیت مشخص شده هماهنگ میکنه، درواقع هرتغییر یا کامیتی بعد از کامیت مشخص شده پاک میشه و پروژه برمیگرده به وضعیت همون کامیت. وقتی استفاده میشه که بخوایم همه چی رو مثل اون کامیت کنیم و تغییرات بعد از اون رو حذف کنیم.
git reset --hard HEAD~1

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

جمع بندی
✍️
دستور reset میتونه نجات دهنده و حتی مخرب باشه. میتونه پروژه رو نجات بده یا یه تغییر بزرگ رو از بین ببره. کاربردای مختلفی داره و برای برگشت به کامیت های قبلی به شکل های مختلف استفاده میشه.
#️⃣ #programming


🥷🏻 CHANNEL | GROUP
🔥11👍21



tgoop.com/ninja_learn_ir/787
Create:
Last Update:

خب خب خب، git reset🔄
توی گیت، دستور reset مثل یه دکمه ی سفر در زمانه که مارو به گذشته ی پروژه میبره. اما چند حالت مختلف داره و بسته به اینکه کدوم یکی از این حالت ها استفاده بشن میتونه روی تاریخچه ی پروژه هم تاثیر بزاره.

Mixed🟡
این حالت پیش فرض برای دستور reset هست. HEAD رو به کامیت مشخص شده برمیگردونه. تغییرات بعد از اون کامیت از Stage خارج میشن(unstaged) ولی تغییرات هنوز توی فایل ها هستن. برای موقعی که میخواین تغییرات باقی بمونن ولی توی Stage نباشن خوبه.
شکل کلی دستور ریست:

git reset <--mode> <commit-id>

دستور ریست با حالت mixed:
git reset --mixed HEAD~1
git reset HEAD~1 # هست mixed حالت پیش فرض همین

دستور بالا آخرین کامیت رو پاک میکنه، تغییرات هنوز وجود دارن ولی دیگه توی Stage نیستن.

Soft🔵
فقط HEAD رو برمیگردونه به کامیت مشخص شده. تغییرات بعد از اون کامیت رو توی Stage نگه میداره. زمانی استفاده میشه که بخوایم کامیت رو حذف کنیم ولی تغییرات باقی بمونن، برای commit مجدد یا اصلاح پیام.
git reset --soft HEAD~1

به طور مثال دستور بالا آخرین کامیت رو پاک میکنه و تغییرات رو توی Staging قرار میده.

Hard🔴
توی این حالت HEAD به کامیت مشخص شده برمیگرده، Staging area و فایل هارو کاملا با کامیت مشخص شده هماهنگ میکنه، درواقع هرتغییر یا کامیتی بعد از کامیت مشخص شده پاک میشه و پروژه برمیگرده به وضعیت همون کامیت. وقتی استفاده میشه که بخوایم همه چی رو مثل اون کامیت کنیم و تغییرات بعد از اون رو حذف کنیم.
git reset --hard HEAD~1

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

جمع بندی
✍️
دستور reset میتونه نجات دهنده و حتی مخرب باشه. میتونه پروژه رو نجات بده یا یه تغییر بزرگ رو از بین ببره. کاربردای مختلفی داره و برای برگشت به کامیت های قبلی به شکل های مختلف استفاده میشه.
#️⃣ #programming


🥷🏻 CHANNEL | GROUP

BY Ninja Learn | نینجا لرن


Share with your friend now:
tgoop.com/ninja_learn_ir/787

View MORE
Open in Telegram


Telegram News

Date: |

Users are more open to new information on workdays rather than weekends. But a Telegram statement also said: "Any requests related to political censorship or limiting human rights such as the rights to free speech or assembly are not and will not be considered." Telegram channels enable users to broadcast messages to multiple users simultaneously. Like on social media, users need to subscribe to your channel to get access to your content published by one or more administrators. In 2018, Telegram’s audience reached 200 million people, with 500,000 new users joining the messenger every day. It was launched for iOS on 14 August 2013 and Android on 20 October 2013. Private channels are only accessible to subscribers and don’t appear in public searches. To join a private channel, you need to receive a link from the owner (administrator). A private channel is an excellent solution for companies and teams. You can also use this type of channel to write down personal notes, reflections, etc. By the way, you can make your private channel public at any moment.
from us


Telegram Ninja Learn | نینجا لرن
FROM American