Sau khi chỉnh sửa .gitignore
để khớp với các tệp bị bỏ qua, bạn có thể làm git ls-files -ci --exclude-standard
để xem các tệp được bao gồm trong danh sách loại trừ; sau đó bạn có thể làm
//On Linux:
git ls-files -ci --exclude-standard -z | xargs -0 git rm --cached
//On Windows:
for /F "tokens=*" %a in ('git ls-files -ci --exclude-standard') do @git rm --cached "%a"
//On mac
alias apply-gitignore="git ls-files -ci --exclude-standard -z | xargs -0 git rm --cached"
để xóa chúng khỏi kho lưu trữ (mà không xóa chúng khỏi đĩa).
Chỉnh sửa : Bạn cũng có thể thêm phần này dưới dạng bí danh trong tệp .gitconfig để bạn có thể chạy bất cứ lúc nào bạn muốn. Chỉ cần thêm dòng sau trong phần [bí danh] (sửa đổi khi cần cho Windows hoặc Mac):
apply-gitignore = !git ls-files -ci --exclude-standard -z | xargs -0 git rm --cached
( -r
Cờ xargs
ngăn không cho git rm
chạy trên một kết quả trống và in ra thông báo sử dụng của nó, nhưng chỉ có thể được hỗ trợ bởi công cụ tìm kiếm GNU. Các phiên bản khác xargs
có thể có hoặc không có tùy chọn tương tự.)
Bây giờ bạn có thể chỉ cần gõ git apply-gitignore
vào repo của bạn và nó sẽ làm việc cho bạn!