Site icon LCDUNG

Giới thiệu 3 cách undo commit hoặc loại bỏ commit cơ bản

Khi bạn vừa thêm một commit vào git tree, và chợt nhận ra commit vừa rồi bị sai, không hoàn chỉnh hoặc có vấn đề, bạn sẽ muốn “undo” commit hoặc loại bỏ nó. Ở đây mình sẽ giới thiệu 3 cách undo commit hoặc loại bỏ commit cơ bản.

Reset

Nhày HEAD về vị trí trước khi commit sai bằng git reset như sau

git reset --hard HEAD^

Ở đây có vài điểm cần lưu ý

Revert

Git revert có thể tạo một commmit với với nội dung đảo ngược lại một commit cũ. Giả sử commit cũ có hash là (commit_hash) thì câu lệnh sẽ là:

git revert (commit_hash)

Git revert hay được sử dụng để đảo ngược một merge commit. Nếu sau khi git revert bạn lại muốn quay lại trạng thái trước khi đảo ngược thì sao ? Câu trả lời là git revert lại chính revert commit vừa mới tạo.

–amend

Bạn có thể ghi đè lại commit mới nhất bằng option --amend của git commit

git commit --amend

Lúc này git sẽ cho phép bạn viết lại commit message. Cách này hay dùng khi muốn sửa commit message. Nếu bạn chỉ muốn add thêm file mà không muốn sửa commit message thi có thể dùng option --no-edit

# Đây là commit sai / thiếu
git add home.php
git commit -m 'Add home'

# Nhận ra là add thiếu 1 file home.css và muốn thêm vào commit bên trên
git add home.css
git commit --amend --no-edit

Kết luận

3 cách bên trên đây có những trường hợp sử dụng cụ thể khác nhau

Exit mobile version