Trong kho lưu trữ git của tôi, tôi đã thực hiện chuyển đổi utf-8 nhiều tệp, nhưng chỉ bên dưới thư mục .git, do đó thư mục .git không được chạm vào. Trước khi chuyển đổi này, tôi đã tạo ra một nhánh thử nghiệm mới, nhưng bây giờ tôi không thể sử dụng repo của tôi được nữa, tôi không thể chuyển về master. Khi tôi làm:trạng thái git cho tôi lỗi: tệp chỉ mục không hợp lệ chữ ký sha1
git status
hoặc bất kỳ lệnh git khác mà tôi nhận được:
error: bad index file sha1 signature
fatal: index file corrupt
fatal: 'git status --porcelain' failed in submodule core/kimai-mobile
Tôi tìm kiếm về nó và tìm thấy lệnh:
rm -f .git/index
và sau này:
git reset
nhưng điều này đã không ' t giúp đỡ. Tôi không hiểu điều gì là sai. Sau đó, tôi đã xóa "submodule" core/kimai-mobile và đột nhiên tôi có thể sử dụng lại!
Tôi có kho lưu trữ git khác trong thư mục này, trong đó tôi đã phá hủy tệp chỉ mục khác bằng chuyển đổi của mình. Vấn đề của tôi là, tôi nghĩ rằng tệp chỉ mục kho lưu trữ "chính" có nghĩa là.
Bây giờ nó đang làm việc một lần nữa :)
Câu hỏi của tôi là, tại sao git nhìn vào submodule này mặc dù tôi đã có toàn bộ thư mục của submodule này trong ignorelist của tôi?
Đây là tập tin bỏ qua của tôi git "chính":
.gitignore
...
# kimai mobile
kimai-mobile
...
Câu hỏi là gì? –