2012-05-31 21 views
9

Tôi đang sử dụng git/github với Eclipse/EGit trên Windows. Một cái gì đó - không chắc chắn nếu nó là git hoặc EGit - đang sửa đổi các tệp của tôi bằng cách chơi trò chơi với dòng mới.Làm thế nào để tôi nhận được git ngừng thay đổi dòng mới trong tệp của tôi?

Bỏ qua những bí ẩn về việc điều khiển phiên bản đang tự sửa đổi tệp là gì, làm cách nào để định cấu hình phần mềm này để không bao giờ thay đổi tệp của mình?

+0

Git không chạm vào dòng mới của bạn trừ khi bạn đã yêu cầu một cách rõ ràng. –

Trả lời

6

Bạn có nhiều lựa chọn tùy thuộc vào hệ điều hành của bạn:

http://help.github.com/line-endings/

Lý do cho hành vi có vẻ kỳ lạ được giải thích ở đó. Về cơ bản mã đang được chia sẻ (git và github) nhưng hệ điều hành có thể khác nhau. Như OS khác nhau đối xử với linefeeds cách khác nhau, một cái gì đó đã thay đổi ...

+0

Ok, có vẻ như đây có thể là giải pháp hoạt động nhưng không giải quyết được sự cố của hệ thống kiểm soát phiên bản có tính kiêu ngạo thay đổi mã của bạn. Đối với tất cả các lỗi của nó, svn không có vấn đề này. – ccleve

+0

Ngoài ra, các hệ điều hành khác nhau không xử lý dòng lệnh khác nhau. Các ứng dụng * khác nhau * làm. Và nếu bạn sử dụng bất kỳ ngôn ngữ lập trình hiện đại, Java, bất cứ điều gì, họ xử lý các vấn đề CRLF tốt. Git nên mông ra. – ccleve

+0

ok, tôi cũng phát hiện một chút của một rant đây user237815, nhưng không ai ít hơn tôi nghĩ rằng phần này cũng cung cấp cho các chi tiết tốt: http://en.wikipedia.org/wiki/Newline#Common_problems –

9
git config --system core.autocrlf false 
git config --system core.whitespace cr-at-eol 

Không cho phép nó để thay đổi bất cứ điều gì hoặc báo cáo vấn đề byte CR ở cuối.

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