Menu
CoddyTech

Git Commit

Cập nhật lần cuối

git commit ghi các thay đổi bạn đã stage vào lịch sử dự án thành một commit mới, kèm một message mô tả những gì đã thay đổi. Bạn stage thay đổi trước bằng git add rồi mới commit, hoặc dùng -am để stage các tệp đã theo dõi và commit trong một bước. Mỗi commit là một bản chụp (snapshot) mà bạn có thể quay lại sau này.

Thử các lệnh này trong playground terminal: một shell thật ngay trên trình duyệt, không cần cài đặt gì.

git commit biến mọi thứ trong staging area thành một commit mới, cố định trong lịch sử của bạn.

Cú pháp

LệnhTác dụng
git commit -m "message"Commit thay đổi đã stage kèm message
git commit -am "message"Stage các tệp đã theo dõi và commit trong một bước
git commitCommit và mở trình soạn thảo để viết message
git commit --amendSửa commit gần nhất
git commit -m "title" -m "body"Commit với tiêu đề và phần nội dung dài hơn

Tình huống thường gặp

Mục tiêuLệnh
Commit mọi tệp đã theo dõigit commit -am "message"
Chỉ commit các tệp đã stagegit commit -m "message"
Sửa message của commit cuốigit commit --amend
Tạo một commit rỗnggit commit --allow-empty -m "msg"

Câu hỏi thường gặp về git commit

Làm sao để commit thay đổi trong Git?
Stage các thay đổi bạn muốn bằng git add <file> (hoặc git add . cho tất cả), rồi chạy git commit -m "your message". Commit ghi lại bản chụp của các thay đổi đã stage vào lịch sử. Để stage và commit các tệp đã theo dõi trong một bước, dùng git commit -am "your message".
git commit -m và -am khác nhau thế nào?
-m cho phép bạn truyền message ngay trên dòng lệnh để Git không mở trình soạn thảo. -am kết hợp -a (stage mọi tệp đã theo dõi bị sửa hoặc bị xóa) với -m, nên stage và commit chỉ bằng một lệnh. Lưu ý -a không gồm các tệp mới chưa được theo dõi: chúng vẫn cần git add riêng.
Làm sao để viết commit message tốt?
Viết một dòng tóm tắt ngắn ở dạng mệnh lệnh ("Add login validation") dưới khoảng 50 ký tự, sau đó tùy chọn thêm một dòng trống và phần nội dung giải thích lý do. Truyền phần nội dung bằng -m thứ hai: git commit -m "Add login validation" -m "Prevents empty submissions", hoặc bỏ hẳn -m để viết trong trình soạn thảo.
Làm sao để sửa commit cuối?
Dùng git commit --amend. Lệnh này mở lại commit gần nhất để bạn sửa message hoặc thêm tệp đã quên stage. Tránh amend commit đã push, vì nó viết lại lịch sử. Xem chi tiết ở trang git commit --amend.
Có thể luyện tập lệnh này online không?
Có. Mở playground terminal để chạy git commit trong một shell thật ngay trên trình duyệt, không cần cài đặt gì. Khóa học Git tương tác miễn phí của Coddy cũng hướng dẫn staging và commit từng bước.
Hình minh họa các ngôn ngữ lập trình của Coddy

Học Git cùng Coddy

Bắt đầu