آموزش گیت Git – بخش ۳ – ریست کردن commit

آموزش گیت Git - بخش 3 - ریست کردن commit

آموزش گیت Git – بخش ۳ – ریست کردن commit

 Git & Github Tutorial – Part3

در مقاله قبل، حذف یک یا چند فایل از stage ، دستور git diff و لاگ گیری از commit های پروژه و غیره  را بیان کردیم. در این مقاله، نحوه بازگردانی (ریست reset) کامیت (commit) های انجام شده را آموزش می دهیم.

 

نحوه بازگردانی تغییرات commit شده (ریست کردن commit)

 

در صورتی که بخواهیم commit های انجام شده را undo کنیم، باید از دستور checkout استفاده کنیم.

دستور checkout در گیت

 

ریست کردن commit – مثال اول:

فرض کنید تغییراتی در فایل index.html و فایل main.css اعمال کرده اید، حالا متوجه شده اید که این تغییرات درست نبوده اند و می خواهید این فایل ها را به حالت قبل از تغییر برگردانید. در این مثال فرض شده است که پس از انجام تغییرات، دستورات افزودن به stage یعنی add و نیز افزودن به repository یعنی commit را انجام نداده اید. اگر دستور git checkout – index.html را اجرا کنیم، تنها فایل index.html به حالت قبل از تغییرات برخواهد گشت.

دستور git checkout – index.html

 اگر بخواهیم تغییرات تمام فایل ها را برگردانیم، باید دستور git checkout — . را اجرا کنیم. علامت نقطه یعنی "." باعث می شود تا دستور checkout روی تمام فایل های پروژه اجرا شود.

 

ریست کردن commit – مثال دوم:

فرض کنید تغییراتی که در برخی از فایل های پروژه خود داده اید و به stage اضافه کرده اید (توسط دستور git add .) را به حالت قبل برگردانیم و آنها را commit نکنیم، دستور git reset HEAD index.html و یا بطور کلی git reset HEAD . را باید اجرا کنیم. با اینکار عملیات Unstage را انجام داده ایم.

دستور git reset HEAD index.html

 در این مرحله تغییرات انجام شده از stage خارج شده و تنها در سطح پروژه موجود است. اکنون اگر دستور git status را اجرا کنیم، گیت، فایل هایی که تغییر داده اید را با رنگ قرمز نمایش می دهد و اعلام می کند برای ذخیره این تغییرات باید ابتدا دستور add و سپس دستور commit را اجرا کنید. اکنون برای برگرداندن تغییرات فایل های موردنظر، مانند مثال اول، دستورgit checkout — .  را باید اجرا کنیم.

 

ریست کردن commit – مثال سوم:

فرض کنید تغییرات موردنظرمان را در repository اضافه (commit) کرده ایم. اگر بخواهیم تغییرات پروژه را به یک commit خاص برگردانیم، ابتدا با دستور git log –oneline لیست تمام کامیت ها را بصورت خلاصه و تک‌خطی مشاهده می کنیم.

نکته: سعی کنید آیدی کامیت ها را در جایی ذخیره کنید تا بتوانید بعدا در صورت بروز اشتباه، به کامیت دلخواه خود بازگردید. اکنون که لیست commit ها را بهمراه آیدی آنها در اختیار داریم، می توانیم به هر کامیتی که می خواهیم بازگردیم. بدین منظور، دستور git reset Commit-ID را اجرا کنید. باید بجای Commit-ID آیدی کامیت موردنظر خود را بنویسید. حال فرض کنید در یک Commit یک یا چند فایل یا فولدر ایجاد کرده ایم و بخواهیم این commit را ریست کنیم (یعنی به commit قبل از آن بازگردیم) باید از دستور git reset –hard Commit-ID استفاده شود.

دستور git reset Commit-ID

 با اجرای این دستور، فایل ها یا فولدرهای مذکور نیز پاک خواهند شد. به همین ترتیب اگر بخواهیم مجددا به همین کامیت برگردیم، پس از اجرای همان دستور، فایلها و فولدرها دوباره ساخته خواهند شد.

با مراجعه به وب سایت مرجع گیت، می توانید درباره دستور reset در Git اطلاعات بیشتری کسب کنید.

در بخش چهارم از آموزش گیت، به معرفی و بررسی مفاهیم branch (شاخه) و merge (ادغام) خواهیم پرداخت.

 

این مقاله را در شبکه‌های اجتماعی به اشتراک بگذارید!

Share on facebook
Share on google
Share on linkedin
Share on telegram
Share on email

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

نوزده − ده =

مقالات اخیر

مقالات تصادفی

فهرست کلی مقالات

کتاب گوگل ادز

دانلود کتاب "آموزش سرویس گوگل ادوردز"

آموزش کامل فعال‌سازی HTTPS در وردپرس

دانلود کتاب "فعال‌سازی HTTPS در وردپرس"

دانلود رایگان کتاب الکترونیکی

معرفی بهترین ابزارهای بازاریابی محتوا در سال 2019

دانلود رایگان کتاب الکترونیکی "معرفی بهترین ابزارهای بازاریابی محتوا در سال 2019"