Staging Area (Index)
Staging Area (Index)
Staging area, còn gọi là index, là một vùng tạm nằm giữa working tree và lịch sử. Nó chứa "bản nháp" của commit tiếp theo.
Vai trò: chọn lọc
Staging area cho phép bạn chọn lọc thay đổi nào sẽ vào commit kế tiếp, thay vì commit lẫn lộn mọi thứ đang sửa. Bạn đưa file vào bằng git add:
git add hello.txt # đưa một file vào staging
git add . # đưa mọi thay đổi vào staging
Sau khi git commit, mọi thứ trong staging được ghi vào lịch sử và staging "sạch" trở lại.
Vị trí trong luồng
working tree → (git add) → staging area → (git commit) → committed
| Khu vực | Đưa vào bằng |
|---|---|
| Working tree | (sửa file) |
| Staging area (index) | git add |
| Committed | git commit |
Nhờ tách riêng bước staging, bạn có thể gom các thay đổi liên quan vào cùng một commit gọn gàng, dễ đọc lịch sử về sau.
Cách nhớ nhanh
Staging area = "giỏ hàng" trước khi thanh toán. git add bỏ thay đổi vào giỏ; git commit là thanh toán, lưu vĩnh viễn những gì có trong giỏ.