Khi làm việc với dự án, bạn chắc chắn sẽ phải thêm, sửa, xóa các file. Khi sử dụng version control, những thao tác này chính xác là những gì bạn muốn theo dõi.
Với Git, bạn chỉ cần làm việc với dự án như bình thường: bắt đầu phát triển tính năng, sửa lỗi,... Khi bạn đến một điểm dừng hợp lý (ví dụ: sửa xong lỗi hoặc hoàn thành tính năng), hãy commit công việc đó vào Git repository để lưu trữ an toàn.
Khi bạn chỉnh sửa, tạo và xóa file, Git sẽ theo dõi ngầm ở phía sau. Sử dụng lệnh git status để xem danh sách tất cả các thay đổi của bạn:
git status
Output:
On branch main
Changes not staged for commit:
modified: homepage.html
deleted: styles.css
Untracked files:
about_me.html
profile_pic.jpg
Trong phần output, bạn sẽ thấy Git biết file nào đã bị sửa đổi (modified), tạo mới hoặc bị xóa (deleted). Trong ví dụ này, tôi đang làm việc trên một trang web và tôi đã thêm about_me.html và profile_pic.jpg, sửa đổi homepage.html, và xóa styles.css.
2 file about_me.html và profile_pic.jpg được đánh dấu là Untracked files vì chưa được Git theo dõi. Nếu không có phiên bản trước của file để tham chiếu, Git sẽ không biết file đó đã bị sửa hay xóa hay chưa, nó chỉ biết đây là lần đầu tiên nó nhìn thấy file này.

Bây giờ đã đến một điểm dừng tốt trong dự án, bạn có thể bắt đầu quy trình ghi lại các thay đổi vào Git repository của mình. Bắt đầu bằng việc staging bất kỳ file nào bạn muốn đưa vào commit bằng lệnh git add.
git add homepage.html styles.css about_me.html profile_pic.jpg

Hành động di chuyển file vào staging area được gọi là staging. Sau khi stage các thay đổi file, bạn có thể chạy git status lại để xác nhận output:
On branch main
Changes to be committed:
new file: about_me.html
new file: profile_pic.jpg
deleted: styles.css
modified: homepage.html
Bạn có thể thấy bây giờ đã có một phần tiêu đề là "Changes to be committed", cho bạn biết những file nào đang nằm trong staging area của bạn.
Thay vì liệt kê từng file một cách riêng lẻ, hãy stage TẤT CẢ các file untracked hoặc modified trong working directory bằng cách sử dụng ký tự . (dấu chấm):
git add .
Nếu bạn vô tình thêm một file vào staging area và muốn đưa nó trở lại working directory, chỉ cần sử dụng lệnh git restore. Ví dụ, để unstage file profile_pic.jpg, hãy chạy:
git restore --staged profile_pic.jpg

Bây giờ các thay đổi đã được chuyển vào staging area, hãy bảo Git chụp một bản snapshot của staging area đó, gói gọn các thay đổi file đó trong một commit, và lưu nó vào repository. Để làm điều này, hãy sử dụng lệnh git commit.
git commit -m 'Added an About page'
Hãy nhớ truyền vào một commit message bằng cách sử dụng cờ -m. Commit messages (cùng với các siêu dữ liệu khác, như tác giả và ngày tháng) được gắn vào mỗi commit. Thông tin bổ sung này giúp dễ dàng nhận biết những thay đổi nào xảy ra trong commit đó.

Bạn đã tìm hiểu về quy trình thực hiện commit trong Git gồm 3 bước: kiểm tra trạng thái file với git status, stage các file với git add, unstage các file với git restore --staged và commit các thay đổi với git commit.

Chúc mừng bạn đã hoàn thành module, hãy thử làm bài quiz để kiểm tra kiến thức nhé!