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

Subagent Claude Code: chia việc cho agent phụ an toàn

Hướng dẫn dùng subagent trong Claude Code: tạo file agent trong .claude/agents, siết quyền bằng tools và permissionMode, cô lập bằng worktree, và chọn model để

Skills trong Claude Code: biến quy trình thành lệnh tái dùng

Hướng dẫn dùng skills trong Claude Code: cấu trúc SKILL.md, vị trí lưu cho cá nhân và team, kiểm soát ai được gọi skill, và các

Plan mode Claude Code: bắt AI lập kế hoạch trước khi viết code

Bài giải thích plan mode trong Claude Code: cách bật bằng Shift+Tab hoặc /plan, Claude được làm gì khi chỉ-đọc, checklist đọc plan trước khi duyệt,

Checkpoint trong Claude Code: quay lại khi AI sửa hỏng code

Bài giải thích cơ chế checkpoint của Claude Code, cách dùng /rewind để khôi phục code và hội thoại, những trường hợp checkpoint không cứu được,

Permission mode trong Claude Code: chọn mức quyền an toàn

Bài giải thích 6 permission mode của Claude Code, cách đổi chế độ bằng Shift+Tab và cờ khởi động, cùng nguyên tắc chọn mức quyền an

Sửa code bằng Claude Code: quy trình an toàn cho người mới

Bài hướng dẫn quy trình sửa code bằng Claude Code an toàn cho người mới: cách viết yêu cầu, duyệt quyền, kiểm tra thay đổi, kiểm

CLAUDE.md là gì? Cách ghi quy tắc dự án để Claude Code làm đúng

Bài giải thích CLAUDE.md là gì, file này load từ đâu, nên ghi nội dung nào và cách bảo trì để Claude Code làm đúng quy

7 lệnh Claude Code cần biết: /help, /clear, /compact và cách dùng

Bài hướng dẫn 7 lệnh Claude Code quan trọng nhất cho người mới bắt đầu, kèm ví dụ thực tế và thời điểm nên dùng từng

Claude Code là gì? Hướng dẫn cài đặt và chạy dự án đầu tiên

Bài giải thích Claude Code là gì, cách cài đặt đúng trên macOS, Windows và Linux, cùng quy trình chạy dự án đầu tiên an toàn

Prompt vibe coding: mẫu brief để AI hiểu rõ sản phẩm

Prompt vibe coding hiệu quả bắt đầu từ một brief rõ, không phải một câu lệnh dài. Mẫu này giúp bạn mô tả sản phẩm, giới

WordPress cho developer 2026: những thay đổi cần kiểm tra

Bài viết tóm tắt các thay đổi WordPress cho developer 2026 đáng chú ý trong tháng 5: Gutenberg, REST API, block editor, theme và kiểm thử

@wordpress/build là gì? Tooling mới cho plugin WordPress

@wordpress/build là hướng tooling mới cho plugin WordPress: build nhanh hơn, convention-based, hỗ trợ script modules và tự tạo file PHP registration.