Cách khôi phục commit lỡ tay xóa nhầm

Nội dung

Khôi phục commit đã xóa trong Git là một trong những tác vụ quan trọng mà mọi người phải biết khi sử dụng Git để quản lý mã nguồn. Tuy nhiên, việc xóa một commit có thể dẫn đến một số sai sót trong quá trình phát triển phần mềm.

Khôi phục commit đã xóa có thể được thực hiện bằng cách sử dụng các lệnh Git như “git reflog” hoặc “git log“. Trong bài viết này, tôi sẽ hướng dẫn cách khôi phục commit đã xóa bằng cách sử dụng cả hai cách để cho bạn có thể chọn phương pháp phù hợp nhất với nhu cầu của mình.

Cách 1: Sử dụng lệnh “git reflog”

“Git reflog” là một lệnh cung cấp cho chúng ta một lịch sử chi tiết về tất cả các hoạt động Git từ khi bạn cài đặt Git trên máy tính của bạn. Bạn có thể sử dụng lệnh “git reflog” để khôi phục commit đã xóa như sau:

  1. Mở Terminal hoặc Command Prompt và chuyển đến thư mục chứa repository của bạn.
  2. Chạy lệnh “git reflog” để xem danh sách tất cả các hoạt động Git trong lịch sử của repository của bạn.
git reflog
  1. Tìm commit bạn muốn khôi phục trong danh sách các hoạt động. Mỗi commit sẽ có một số hash duy nhất để xác định nó.
  2. Chạy lệnh “git checkout” với số hash của commit bạn muốn khôi phục.
git checkout <hash-of-commit>
  1. Sau khi chạy lệnh trên, bạn sẽ được chuyển về branch mà commit đó nằm trên và có thể tiếp tục làm việc từ đó.

Cách 2: Sử dụng lệnh “git log”

“Git log” là một lệnh cho phép bạn xem lịch sử các commit trong một repository Git. Bạn có thể sử dụng lệnh “git log” để khôi phục commit đã xóa như sau:

  1. Mở Terminal hoặc Command Prompt và chuyển đến thư mục chứa repository của bạn.
  2. Chạy lệnh “git log” để xem danh sách tất cả các commit trong repository của bạn.
$ git log
  1. Tìm commit bạn muốn khôi phục trong danh sách các commit. Mỗi commit sẽ có một số hash duy nhất để xác định nó.
  2. Chạy lệnh “git checkout” với số hash của commit bạn muốn khôi phục.
$ git checkout <hash-of-commit>
  1. Sau khi chạy lệnh trên, bạn sẽ được chuyển về branch mà commit đó nằm trên và có thể tiếp tục làm việc từ đó. Tuy nhiên, lưu ý rằng khi bạn khôi phục một commit đã xóa, nó có thể gây ra sự không tương thích với những commit đứng sau nó trong lịch sử. Vì vậy, hãy chắc chắn rằng bạn hiểu rõ tác dụng của việc khôi phục một commit trước khi thực hiện.

Đó là hai cách để khôi phục một commit đã xóa trong Git. Nếu bạn cần hỗ trợ thêm, hãy để lại một câu hỏi. Tôi sẽ sẵn sàng trả lời cho bạn.

Khôi phục bằng reflog sau khi xóa commit hoặc branch

Khôi phục Code bằng Git reflog

Git recovery reset –hard

Xem thêm: Các lỗi thường gặp khi làm việc với git

Xem thêm: Đổi tên local branch và remote branch khi sử dụng Git

Anthony Nguyễn

Cây bút chính tại VietnamTutor

Bài viết cùng chuyên mục

Nâng Cấp Laravel 13: Checklist 10 Bước Không Thể Bỏ Qua 2026

Hướng dẫn nâng cấp Laravel 13 chi tiết với checklist 10 bước. Từ kiểm tra PHP 8.3, cập nhật dependencies, đến xử lý lỗi thường gặp

Hardening Laravel Production: Checklist Bảo Mật Toàn Diện 2026

Checklist hardening Laravel production toàn diện. Từ cấu hình server, database, SSL đến security headers, rate limiting và monitoring.

Authentication & Authorization Trong Laravel: Hướng Dẫn A-Z 2026

Hướng dẫn chi tiết cách xây dựng hệ thống Authentication (xác thực) và Authorization (phân quyền) trong Laravel với Breeze, Fortify, Sanctum, Policies và Gates.

Bảo Mật Laravel: 10 Lỗi Phổ Biến & Cách Phòng 2026

Hướng dẫn 10 lỗi bảo mật phổ biến nhất trong Laravel và cách phòng tránh hiệu quả. Từ XSS, SQL injection đến authentication vulnerabilities.

Migration PHP Attributes Laravel 13: Hướng Dẫn Chi Tiết

Cách chuyển đổi từ protected properties sang PHP Attributes trong Laravel 13 với hướng dẫn từng bước và code examples chi tiết.

Laravel 13 Có Gì Mới? Tổng Hợp Tính Năng Mới 2026

Laravel 13 ra mắt ngày 17/3/2026 với PHP 8.3, PHP Attributes, AI SDK và nhiều cải tiến. Khám phá chi tiết các tính năng mới của

Kubernetes for Beginners 2026: Hướng Dẫn Từ A-Z

Kubernetes (K8s) là nền tảng container orchestration phổ biến nhất hiện nay. Bài hướng dẫn này sẽ giúp bạn hiểu Kubernetes là gì, kiến trúc cơ

Docker Compose Best Practices 2026: 10 Tips Quan Trọng

Docker Compose giúp bạn quản lý multi-container applications dễ dàng hơn. Bài viết này tổng hợp 10 best practices quan trọng nhất để sử dụng Docker

Lỗ hổng RCE (CVE-2025-55182) trên React, Next.js?

Cảnh báo khẩn cấp: React2Shell (CVE-2025-55182) gây RCE nghiêm trọng cho React/Next.js. Nắm cơ chế, dấu hiệu & phòng thủ cấp bách để bảo vệ ứng

Dead-Letter Queue: Giải pháp cứu cánh cho tin nhắn lỗi hệ thống

DLQ là chìa khóa quản lý tin nhắn lỗi hiệu quả trong hệ thống phân tán. Đảm bảo tin nhắn không bị mất, tăng độ tin

Lập trình viên: Xây doanh nghiệp một người, kiếm 10.000 USD/tháng

Lập trình viên: Khám phá khung làm việc để xây dựng doanh nghiệp một người, kiếm 10.000 USD/tháng. Biến kỹ năng code thành cỗ máy tiền,