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"
Bài viết này được đăng tại [kiso.vn]
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à kiso.txt
với nội dung như sau:
Welcome to Kiso.vn
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 kiso.txt git commit -m "Them file kiso.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.
Bài viết liên quan
[CSF-2] Một số thiết lập CSF, LFD
Hôm nay mình sẽ thực hiện một số thiết lập trên CSF Mở file config để sửa đổi một số tính năng dưới /etc/csf/csf.conf Nội dung chính1. Git commit branchTrước khi commitThực hànhMinh chứng 2...
[CSF-1] Tăng bảo mật Server với ConfigServer Firewall (CSF)
Nội dung chính1. Git commit branchTrước khi commitThực hànhMinh chứng 2 branch tách biệt nhau3. Lời kết1. Khái niệm CSF: CSF (ConfigServer & Firewall) là một bộ ứng dụng hoạt động trên Linux như một...
Sử dụng SSH Key với Gitlab và Github
Bài viết này mình sẽ hướng dẫn các bạn tạo ssh key cho Gitlab và Github SSH là gì? Secure Socket Shell là một giao thức mạng dùng để thiết lập kết nối mạng một...
Directory traversal vulnerabilities (phần 4)
Nội dung chính1. Git commit branchTrước khi commitThực hànhMinh chứng 2 branch tách biệt nhau3. Lời kếtV. Phân tích và khai thác các lỗ hổng Directory traversal (tiếp) 5. Bypass lỗ hổng khi trang web...
Directory traversal vulnerabilities (phần 3)
Nội dung chính1. Git commit branchTrước khi commitThực hànhMinh chứng 2 branch tách biệt nhau3. Lời kếtV. Phân tích và khai thác các lỗ hổng Directory traversal 1. Lỗ hổng xảy ra khi sử dụng...
Directory traversal vulnerabilities (phần 2)
Nội dung chính1. Git commit branchTrước khi commitThực hànhMinh chứng 2 branch tách biệt nhau3. Lời kếtIII. Vì sao lỗ hổng Directory traversal xuất hiện? Với mỗi ngôn ngữ lập trình khác nhau, điểm xuất...