Git - Commit căn bản

Trước khi chuyển đổi sang branch khác thì bạn nên lưu lại tất cả những gì đã làm bằng lệnh commit. Nếu bạn không commit thì sau khi chuyển sang branch khác những thay đổi của bạn sẽ không được lưu lại trong history và sau này bạn không thể rollback lại được.

Lưu ý: Vì mình sẽ trình bày về commit ở một bài khác nên trong bài này mình chỉ hướng dẫn sơ lược đủ để phục vụ cho các bài trong phần này thôi nhé.

1. Git commit branch

Để lưu lại những gì đã làm vào branch thì bạn sử dụng lệnh commit với cú pháp như sau:

git commit -m "message"

Trong đó message là tin nhắn bạn muốn lưu cho lần commit đó. Ví dụ sau khi sửa xong chức năng đăng nhập thì bạn sẽ commit với nội dung như sau:

git commit -m "Sua phan dang nhap"

Trước khi commit

Trước khi commit thì bạn phải sử dụng lệnh git add <file_name> để khai báo là sẽ commit file này, trường hợp bạn muốn commit tất cả các file có thay đổi thì sử dụng lệnh git commit ..

Ví dụ: Mình sửa file demo.txt và muốn commit nó lên thì thực hiện các bước như sau:

git add demo.txt
git commit -m "Thay doi file demo.txt"

Xem hình để hiểu rõ hơn.

Thực hành

Bạn hãy tạo một file tên là freetuts.txt với nội dung như sau:

Welcome to Freetuts.net

Bây giờ mình cần sử dụng file này ở branch task2, lúc này các bước để commit như sau:

git checkout task2
git add freetuts.txt
git commit -m "Them file freetuts.txt"

Kết quả như hình:

Minh chứng 2 branch tách biệt nhau

Ở các bài trước mình có nói là mỗi branch sẽ tách biệt nhau, và để minh chứng điều đó thì mình sẽ đưa ra một ví dụ.

Tại branch task1 bạn hãy tạo một file file1.txt, sau đó thực hiện thao tác commit.  Tiếp theo bạn chuyển sang branch task2 thì lập tức file1.txt sẽ biến mất vì task2 không hề tồn tại file1.txt. Nhưng khi bạn chuyển sang lại branch task1 thì lập tức file đó lại xuất hiện.

3. Lời kết

Như vậy mỗi khi làm việc xong thì ta sẽ phải thực hiện commit thì Git mới ghi nhận lại lịch sử, từ đó dựa vào chỉ số lữu trữ thì sau này. Bài này mình chỉ trình bày sơ lượt nên không nói đến khái niệm HEAD, STASH ... mình sẽ trình bày chi tiết hơn về commit ở một chương khác.

Nguồn: freetuts.net