Tôi đang sử dụng git để kiểm soát nguồn trên một kho lưu trữ. Gần đây nó đã bắt đầu cảnh báo tôi về phải mất bao lâu để liệt kê các file untracked khi sử dụng git status
:Git liệt kê các tập tin không tồn tại không tồn tại từ từ
$ git status
On branch my_branch
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: My_Project/my_source.c
It took 3.24 seconds to enumerate untracked files. 'status -uno'
may speed it up, but you have to be careful not to forget to add
new files yourself (see 'git help status').
no changes added to commit (use "git add" and/or "git commit -a")
Tuy nhiên, không có file untracked trong kho lưu trữ này - Tôi đã kiểm tra với git status -uall
. Một số thông tin có thể có liên quan khác:
- Tôi đã lưu ý rằng cảnh báo này chỉ xuất hiện khi
git status
thực sự mất vài giây để chạy. - Kho lưu trữ của tôi là 130,6 MB vào lúc này.
- Sản phẩm xây dựng của tôi là tất cả ngoài cây.
Tại sao git mất quá nhiều thời gian để liệt kê các tệp không được theo dõi không tồn tại?
Dưới đây là một số câu hỏi khác liên quan:
"Tệp không được theo dõi" bao gồm các tệp bị bỏ qua bởi '.gitignore' và bạn bè. Kích thước của kho lưu trữ của bạn không thực sự quan trọng, vì 'git status' chỉ' lstat() 's các tệp của bạn. Điều quan trọng là có bao nhiêu tập tin có, làm thế nào sâu lồng nhau cây thư mục của bạn và hệ thống tập tin của bạn nhanh như thế nào. –
Nếu bạn có nhiều tạo phẩm xây dựng trong cây, bạn có thể cân nhắc sử dụng các bản dựng ngoài cây để tăng tốc độ. –
@SvenMarnach Thú vị. Các bản dựng của tôi đã lỗi thời - tôi đã chỉnh sửa câu hỏi của mình để phản ánh điều này. Dự án của tôi là lớn, nhưng không điên - đại đa số các nguồn là một cấp độ sâu, và có 334 tệp như vậy ở lần cuối cùng. – ravron