2015-05-22 24 views
9
> git fsck 
error in commit %hash%: invalid author/committer line - bad time zone 

> git show %hash% 
Date: Mon Mar 18 23:57:14 2201 -5274361 

Làm cách nào để khắc phục sự cố này? Với git rebase trong nhánh chính và xóa \ cập nhật thông tin cam kết, hoặc thực hiện một số phép thuật trong thư mục dự án .git, hoặc bằng cách nào đó khác?git cam kết múi giờ bị hỏng

+0

Việc xóa và xóa/cập nhật cam kết sẽ dẫn đến ghi lại lịch sử lớn mà có thể không thích hợp hơn. Phần thú vị nhất đối với tôi là làm sao mà lỗi này có thể xảy ra? Tôi chưa có câu trả lời. – ckruczek

+0

Bạn đang sử dụng phiên bản Git nào? Bạn có sử dụng nó cùng với bất kỳ công cụ của bên thứ ba nào không? – Jubobs

+0

Phiên bản repo git từ xa là 1.7, máy khách (của tôi) là 1.9, không có gì khác được sử dụng. – Alex

Trả lời

2

Tôi muốn tìm giải pháp git rebase -i.

Chỉnh sửa các cam kết sai và git commit --amend --date="Mon Jul 24 14:00 2015 +0100" khi bạn dừng lại.

Nếu bạn rebase trên cam kết đẩy, bạn sẽ phải viết lại lịch sử chi nhánh (trong trường hợp của bạn master) bằng cách thực hiện push -f.

+0

Tôi đã có thể sửa đổi các cam kết nhưng git fsck cho thấy những cái cũ vẫn còn đó ... –

0

EDIT: Nếu tùy chọn rebase không hoạt động .. Tôi sẽ viết tắt cố gắng để sửa chữa các repo ..

tôi sẽ đi với một xuất khẩu nhanh chóng và nhập khẩu nhanh chóng ..

git fast-export --all | (cd /cleanrepo/ && git fast-import) 

Tôi sẽ thêm --anonymize để xóa tất cả thông tin nhận dạng nếu các lỗi trên không ..

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