2013-01-22 3 views
1

마지막 커밋 (같은 계정, Windows 용 Github을 사용하는 다른 SSH 키)과 다른 컴퓨터에서 커밋 할 때마다 다음과 같은 결과가 표시됩니다. 재 작성되고있다.GitHub에 커밋하는 여러 컴퓨터

https://github.com/Yttrium-tYcLief/Scrotter/commit/0c012c51bae0db198a10a5fc73294c2eb04d1ea0

클라이언트 측, 그것은 새로운 Windows 용 GH 커밋 동기화하기 전에 올바르게 표시되지만 않는 한 번 클라이언트 (그리고 다른 모든 클라이언트)에 동기화 커밋의 차이 란에 전체 재 작성을 보여줍니다 .

이 문제를 해결할 방법이 있습니까?

+0

하지만 Github에서의 컴퓨터는 유닉스를 실행하고 자식 설정이 자동으로 [다른 행 끝] 변경이있다 (http://en.wikipedia.org/wiki/Newline#Representations). – andrewdotn

+0

그래서 Github은 커밋 한 후 코드를 뒤범벅합니까? 그건 멋지지 않아. 다시보고하고 이것이 작동하는지 확인하겠습니다. – yttrium

+0

또한 왜 Github과 인터페이스하는 하나의 컴퓨터 만 사용할 때 (그리고 SSH 키 하나를 사용하여)이 문제가 발생하지 않습니까? – yttrium

답변

1

아무도 유니 코드 끝으로 저장하지 않아야합니다.

은 아마도 당신은 개념을 문자 인코딩라인 엔딩 혼합된다.

두 버전의 파일을 비교해 보면 두 파일 모두 UTF-8로 인코딩되어 있으므로 아무런 문제가 없음을 알 수 있습니다. 다른 사람들이 제안한 것처럼 문제는 줄 끝과 함께 있습니다. 그 마지막 커밋으로 Unix LF 줄 끝에서 Windows CRLF 줄 끝으로 전환하는 방법이 있습니다.

Windows 컴퓨터에서도 유닉스 LF 행 결말을 사용하는 것이 가장 쉽다는 것을 알게되었습니다. 내 텍스트 편집기는 기본적으로 LF 줄 끝을 사용하도록 설정했습니다. 그 다음부터 어떤 이유로 든 CRLF 줄 끝으로 커밋하려고하면 자식은 git diff으로 시각적으로 표시됩니다.

crlf

관련 문제