| ویژگی | git reset | 
git restore | 
|---|---|---|
| محدوده تأثیر | روی history (commit) و staging (index) اثر داره | روی فایلهای working directory یا staging اثر داره | 
| مناسب برای | برگشت دادن commit یا unstaging فایلها | برگردوندن فایلها به حالت قبل | 
| خطرناک؟ | ممکنه commit حذف کنه (بسته به نوع reset مثلاً --hard) | 
نه، فقط فایلها رو به حالت قبلی برمیگردونه، امنتره | 
reset = بیشتر برای commit history و stage هست، خطرناکتره مخصوصاً با --hard
restore = بیشتر برای فایلهای فعلی هست، امنتره، مخصوصاً وقتی فقط بخوای یه فایل رو برگردونی