문제

데스크탑이 충돌했을 때 Eclipse Workspace를 Linux에서 Windows로 옮겨야했습니다. 일주일 후 나는 그것을 Linux에 다시 복사하고, 행복하게 코딩하고, CVS에 커밋합니다. 그리고 아아, Windows Newlines는 많은 파일을 오염 시켰으므로 CVS Diff는 한 줄을 변경하더라도 전체 파일을 덤프합니다!

스크립트를 요리 할 수는 있지만 Eclipse 프로젝트 파일을 엉망으로 만들지 궁금합니다.

도움이 되었습니까?

해결책

말한 바와 같이 여기 그리고 여기:

파일 인코딩을 설정하십시오 UTF-8 텍스트 파일이 Windows OS에만 국한되지 않고 이기종 개발자 데스크탑에서 가장 쉽게 공유되는 형식으로 저장되도록 새 파일에 대한 라인 엔딩 :

  • 작업 공간 기본 설정 (일반 : 작업 공간)으로 이동
  • 인코딩 텍스트 파일을 변경하십시오 UTF-8
  • 새 텍스트 파일 줄 구분기를 다른 사람으로 변경하고 픽-리스트에서 Unix를 선택하십시오.

alt text

  • 참고 : 기존 파일의 줄 종말을 변환하려면 Eclipse에서 파일을 열고 선택하십시오. File : Convert Line Delimiters to : Unix

: 패키지 탐색기에서 선택한 다음 메뉴 항목으로 이동하여 기존 파일을 쉽게 변환 할 수 있습니다. File : Convert Line Delimiters to : Unix

다른 팁

나는 한 줄 변경으로도 동일하게 일식 오염 된 파일을 가지고있었습니다. 솔루션 : Eclipse git 설정 -> 항목 추가 : 키 : Core.Autocrlf 값 : True

enter image description here

enter image description here

편리한 bash 유틸리티가 있습니다. dos2unix - DOS/MAC에서 UNIX TEXT FILE FORMAT CONVERTER로 배포판에 아직 설치하지 않은 경우 패키지 관리자를 통해 쉽게 설치할 수 있어야합니다. dos2unix 맨 페이지

Eclipse 솔루션 및 언급 된 도구 외에 또 다른 대답, 고려하다 튀기다. 정상과 Windows Linebreak 사이의 어느 쪽이든 '플립'할 수 있으며 파일의 타임 스탬프 및 기타 통계를 보존하는 것과 같은 좋은 일을합니다.

문제를 해결하기 위해 이와 같이 사용할 수 있습니다.

find . -type f -not -path './.git/*' -exec flip -u {} \;

(git을 사용하는 경우 .git 디렉토리를 무시하기 위해 조항을 제출하지만 Flip은 기본적으로 이진 파일을 무시하기 때문에 필요하지 않을 수 있습니다.)

당신은 그것을 시도 할 수 있습니다. 문제는 Windows가 새 라인이 주어지면 선 피드뿐만 아니라 캐리지 리턴을 삽입한다는 것입니다. Unix-Systems는 라인 피드를 삽입합니다. 따라서 여분의 캐리지 리턴 캐릭터는 당신의 일식이 신축성을 엉망으로 만드는 이유 일 수 있습니다.

프로젝트에서 하나 또는 두 개의 파일을 잡고 변환하십시오. 메모장 ++를 사용하여 그렇게 할 수 있습니다. 파일을 열고 Format-> Unix (Windows를 사용할 때)로 이동하십시오.

Linux에서는 명령 줄에서 이것을 시도합니다.

sed 's/$'"/`echo \\\r`/" yourfile.java > output.java

캐리지 리턴을 재귀 적으로 제거하려면 (\r) 모든 아동 디렉토리의 CVS/* 파일에서 UNIX 쉘에서 다음을 실행하십시오.

find ./ -wholename "\*CVS/[RE]\*" -exec dos2unix -q -o {} \;
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top