Khi tôi đã làm một svn git rebase nó dừng lại tại một thời điểm nói: (. Tôi đến để nhận biết rằng những phím SHA tương ứng với một cây và không phải là một cam kết từ git chương trình của hai phím sha trên)Làm cách nào để giải quyết chỉ mục git-svn không khớp?
Index mismatch: SHA key of a tree != SHA key of another tree.
re-reading <sha index of a commit in svn/trunk>
... list of files ...
fatal: bad object <SHA1 index of the bad object>
rev-list -1 <SHA1 index of the bad object> --not <SHA1 index of the revision it was trying to re-read>: command returned error: 128
Tôi không có kinh nghiệm trong các hoạt động nội bộ của git, vậy có một chuỗi các bước để làm theo các vấn đề phân tích như thế này và có thể giải quyết chúng?
Việc đầu tiên tôi nghĩ rằng tôi sẽ thử với một kho lưu trữ bị nghi ngờ bị hỏng là một ['git fsck'] (http://www.kernel.org/pub/software/scm/git/docs/git-fsck.html). –
@ Greg-Hewgill: Cảm ơn bạn đã đề xuất. Tôi đã làm một fitk git và nó được liệt kê một loạt các cây lủng lẳng, cam kết và các đốm màu. Tôi đang tham khảo phần này trong hướng dẫn sử dụng Git: http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#recovering-from-repository-corruption và cố gắng tìm ra những gì đã xảy ra trong repo. May mắn thay, vài tuần trở lại tôi đã lưu trữ thư mục .git của tôi để đồng nghiệp của tôi bắt đầu và chạy với repo. Tôi đã sử dụng nó và tạo ra một repo mới và tiếp tục với công việc của tôi trong khi tôi tìm ra những gì đã xảy ra với người bị hỏng. – yasouser
Chỉ có điều mà tôi có thể nghĩ đến là một người khác có thể bị loại bỏ trước khi bạn làm, do đó thay đổi khóa SHA của repo từ xa và cho bạn lỗi mà bạn thấy bây giờ. Nếu bạn đã kéo các thay đổi được thực hiện cho cây, sửa bất kỳ xung đột nào, sau đó rebase từ đó, nó có thể hoạt động bình thường. – g19fanatic