2016-01-28 20 views
25

Đã có một số github.com giảm thời gian hôm nay mà tôi đã không nhận thức được cho đến khi tôi tiếp tục thúc đẩy khoảng một chục cam kết địa phương.Lỗi hệ thống không mong muốn sau khi đẩy được nhận

Dưới đây là thông điệp mà tôi nhận được khi cố gắng chuyển đến github.com:

remote: Unexpected system error after push was received. 
remote: These changes may not be reflected on github.com! 
remote: Your unique error code: abcdefghijklmnopqrstuvwxuz 

Bây giờ github.com đó là sao lưu, khi tôi xem dự án cam kết lịch sử trực tuyến, tôi có thể thấy các cam kết này là chưa được đẩy lên đến repo.

Tôi đã xác định rằng tôi chỉ có thể đẩy các thay đổi này một lần nữa với git push origin master, nhưng tôi được thông báo Everything up-to-date. Tương tự như vậy, git pull origin master cũng hiển thị Everything up-to-date.

Làm cách nào để có được những thay đổi cục bộ này được đẩy lên repo của tôi trên github.com?

+0

Điều này xảy ra với tôi ngay bây giờ :) – lmgonzalves

+0

Và bây giờ chúng tôi có một lời nhắc nhở đến luôn 'pull' trước' push'. –

+0

Tôi đã gặp phải vấn đề này ngày hôm qua, bất kể tôi đã làm gì, lịch sử cam kết trực tuyến không được cập nhật (tôi cũng gặp lỗi tương tự). Thử lại ngày hôm nay và tất cả các cam kết bây giờ xuất hiện. –

Trả lời

11

Tôi ghét phải trả lời câu hỏi của riêng tôi quá nhanh, nhưng với một chút mày mò, đây là một công việc nhanh chóng xung quanh tôi phát hiện ra:

echo "bar" >> foo.txt 
git add foo.txt 
git commit -m "Add foo.txt" 
git push origin master 
git rm foo.txt 
git commit -m "Remove foo.txt" 
git push origin master 

này đúng cách làm mới lịch sử cam kết cho repo github.com tôi. Điều này nên được an toàn để làm, nhưng chắc chắn mất một bản sao lưu của mã địa phương của bạn trước khi thử nó.

+10

Bạn có thể thêm một cam kết trống với '' 'git commit --allow-empty''' –

+2

Tôi đã sử dụng' git commit --amend' để tạo một băm mới để đẩy lên. Giải pháp tương tự mà không thực sự thay đổi bất cứ điều gì. – fideloper

2

Tôi cũng đã có điều này, và có, đẩy một cam kết khác đã khắc phục được sự cố.

Tôi nghĩ rằng nguồn gốc của vấn đề có thể là tôi đã kéo từ cùng một repo cùng một lúc (tôi sử dụng mô-đun con). Kéo đó mang lại tất cả mọi thứ đến nay, trong khi đẩy đầu tiên vẫn còn treo (và sau đó cuối cùng phun ra thông báo lỗi).

4

Đẩy một cam kết khác cho tôi không hoạt động. Thay vào đó, tạo một nhánh giả, từ giao diện web, giải quyết được sự cố.

+2

Chỉ có cùng một vấn đề và đây là độ phân giải hoàn hảo. Tôi nghĩ rằng đây sẽ là câu trả lời được chấp nhận vì nó không yêu cầu dọn rác lên chủ với các cam kết không cần thiết. –

+1

Chỉ có cùng một vấn đề và điều này đã khắc phục. Phải là một vấn đề hiện tại. –

6

Tôi đồng ý với Yên Chi, ông ấy nên đưa ra câu trả lời này. Ít nhất, làm cùng thực hiện một trống:

git commit --allow-empty 
0
git commit --amend 
git push -f origin HEAD 

hoặc nếu bạn không thích điều đó

git commit --allow-empty 
git push origin HEAD 
Các vấn đề liên quan