2011-12-15 38 views
10

Tôi đang làm việc với Git trên máy tính Windows 7 trên dòng lệnh và với TortoiseGit. Điều này hoạt động tốt. Bây giờ tôi đã cài đặt EGit cho Eclipse. EGit hiển thị tất cả các tệp được thay đổi mặc dù trạng thái git báo cáo chính xác, rằng không có thay đổi nào.Egit hiển thị tất cả các tệp đã thay đổi

Bất kỳ ý tưởng nào là sai?

+1

Nhật thực có thay đổi kiểu kết thúc dòng (từ 'LF' thành' CRLF' hoặc ngược lại) không? –

+0

@DavidBrigada anh ta nói rằng 'trạng thái git' không có sự khác biệt – fge

Trả lời

13

Tôi cũng có vấn đề tương tự, tôi đã thay đổi thuộc tính bên dưới của khung cảnh kho theo cấu hình Git trong eclipse

autocrlf = false

này khắc phục vấn đề

Bạn có thể biết thêm chi tiết từ liên kết dưới đây quá:

There is nothing changed, but eclipse egit marks the file as changed

về cơ bản tôi đã thêm này pro perty là true để giải quyết các ký tự ctrl + M trong các tệp kịch bản lệnh. Bây giờ tôi không chắc chắn làm thế nào để giải quyết vấn đề này. Bất kỳ suy nghĩ về điều này, xin vui lòng chia sẻ.

+1

Trái với bài viết được đề cập, tôi chỉ làm việc trên các cửa sổ. Tất cả các công cụ khác, bao gồm cả Eclipse làm việc tốt và không có vấn đề kết thúc dòng cho đến nay. Chỉ có EGit cho thấy mọi thứ đã thay đổi. Chơi với các thiết lập kết thúc dòng sẽ ảnh hưởng đến kho lưu trữ mà chắc chắn không phải là con đường để đi. – BetaRide

+0

Đã khắc phục sự cố cho tôi! – Etienne

+0

Dường như đã giải quyết được vấn đề của tôi, nó cũng có lẽ là một ý tưởng tốt để thay đổi kết thúc dòng Eclipse thành Unix nếu bạn đang làm việc trên nhiều nền tảng. Trợ giúp> Tuỳ chọn> Chung> Không gian làm việc> Dấu phân cách dòng tệp văn bản mới – 3urdoch

2

Đây là phản hồi trễ, nhưng gần đây tôi đã gặp sự cố tương tự này khi bắt đầu nhân bản một kho lưu trữ git. EGit đã cho thấy tất cả các tập tin được thay đổi mặc dù nó vừa được nhân bản và git bash cho thấy không có thay đổi trong các tập tin.

Vì bạn thường không muốn autocrlf = false trên máy Windows, nên tôi đã để lại autocrlf = true và nhân bản kho lưu trữ. Sau đó, trong EGit tôi cam kết những thay đổi giả cho tất cả các tập tin và cuối cùng trong git bash trở lại cam kết trước đó với git reset --hard HEAD^1. Điều này lừa EGit vào suy nghĩ kết thúc dòng là chính xác mà không cần phải chạm vào kho thực tế. Cam kết và kéo sau thời điểm này đã không sao chép sự nhầm lẫn EGIT trong cấu hình của tôi. Ngoài ra không có thay đổi kết thúc dòng bất ngờ xảy ra khi tôi đẩy vào kho lưu trữ.

1

Tôi chưa bao giờ có thể nhận được bất kỳ giải pháp được đề xuất nào để hoạt động. Tôi đã kết thúc sửa vấn đề bằng cách tái nhân bản kho lưu trữ với Windows đã cài đặt Git Bash (tôi đã nhân bản bằng Git trong Cygwin trước đó).

Tôi đăng bài này dưới dạng một câu trả lời khác chỉ trong trường hợp người khác ở cùng một thuyền với tôi.

1

Tôi cũng gặp sự cố này và điều đó khiến tôi phát điên! Nó kepts nói 'xung đột Thanh toán với file:'

Dù sao tôi quản lý để (loại) khắc phục điều này bằng cách kết hợp các nội dung sau:

Team -> Advanced -> Giả Không thay đổi trên tài nguyên gây ra xung đột

Sau đó, thay đổi core.autocrlf thành false và cũng đặt core.whitespace thành chuỗi rỗng.

Tính năng này hoạt động tốt đối với các tệp .java nhưng tệp .xml và tệp .xsd vẫn gây ra sự cố này!

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