2012-05-30 19 views
15

Thỉnh thoảng khi thực hiện rebase bằng cách sử dụng plugin MercurialEclipse, kho lưu trữ của tôi bị ném vào trạng thái lẻ. Nó sẽ trở thành bị mắc kẹt trong một "rebasing" nhà nước, nhưng khi tôi cố gắng để hủy bỏ rebase (ví dụ "hg rebase -a") Tôi nhận được thông báo này lỗi:hg rebase abort không thành công: "unknown revision"

hủy bỏ: unknown sửa đổi 'xxxx'!

Trong đó xxxx là băm sửa đổi. Thông thường tại thời điểm này tôi đã từ bỏ tất cả hy vọng thực hiện rebase - Tôi chỉ muốn quay trở lại một thời gian hạnh phúc hơn khi kho của tôi không bị hỏng. Cho đến nay giải pháp của tôi đã được nuke thư mục dự án của tôi và clone nó một lần nữa. Có giải pháp ít quyết liệt hơn không?

+1

Tôi có thể xác nhận vấn đề vẫn còn tồn tại, điều này đã được thảo luận trong danh sách: http://comments.gmane.org/gmane.comp.version-control.mercurial.devel/36295 nhưng chưa khắc phục được trong – jontro

Trả lời

18

Chỉ cần xóa .hg/rebasestate và repo của bạn sẽ hoạt động.

Bản vá được mô tả trong this chủ đề gọi hàm nội tuyến clearstate chỉ cần hủy liên kết tệp này.

+0

Hah, nó đã hoạt động! Cảm ơn bạn cũng đã tìm ra vấn đề trên danh sách dev. Có lẽ chúng ta có thể xem lại câu trả lời này sau khi vấn đề được khắc phục. – NobodyMan

2

Trong những tình huống tương tự như này, tôi thường làm:

$ hg check 
$ hg verify 
$ hg up -C default 

Thay vì default, sử dụng bất cứ chi nhánh bạn đang làm việc trên. Điều này cần có thời gian, nhưng cũng tái nhân bản repo.

Điều này thường hữu ích.

+1

Không có súc sắc , không may. – NobodyMan

Các vấn đề liên quan