Programing

LF는 git에서 CRLF로 대체됩니다-그게 무엇이며 중요합니까?

lottogame 2020. 9. 27. 12:41
반응형

LF는 git에서 CRLF로 대체됩니다-그게 무엇이며 중요합니까? [복제]


중복 가능성 :
LF를 CRLF로 대체하는 git

새 레일스 애플리케이션을 만들 때 LF 교체에 대한 경고가 git에 표시됩니다. 나는 git init git add합니다.

그리고 붐! 거의 모든 파일에 대해이 팝업이 표시됩니다. 나는 보통 계속해서 내 애플리케이션을 빌드하고 파일을 많이 변경하면 사라집니다.

예:

파일은 작업 디렉토리에 원래 줄 끝이 있습니다. 경고 : LF는 Gemfile에서 CRLF로 대체됩니다.

파일은 작업 디렉토리에 원래 줄 끝이 있습니다. 경고 : LF는 Gemfile.lock에서 CRLF로 대체됩니다.

파일은 작업 디렉토리에 원래 줄 끝이 있습니다. 경고 : LF는 README에서 CRLF로 대체됩니다.

LF와 CRLF의 차이점은 무엇입니까?

장기적으로 이것에 대해 걱정해야할까요 아니면 그냥 무시하고 평소처럼 계속해야할까요?


Unix 시스템에서 줄 끝은 줄 바꿈 (LF)으로 표시됩니다. 창에서 줄은 캐리지 리턴 (CR)과 줄 바꿈 (LF)으로 표시됩니다 (CRLF). 유닉스 시스템에서 업로드 된 git에서 코드를 받으면 LF 만 있습니다.

이 경고를 끄려면 git 명령 줄에 입력하십시오.

git config core.autocrlf true

git이이를 처리하는 방법을 현명하게 결정 하려면 문서를 읽으십시오.

다음은 스 니펫입니다.

서식 및 공백

서식 지정 및 공백 문제는 많은 개발자가 공동 작업, 특히 크로스 플랫폼에서 발생하는 더 실망스럽고 미묘한 문제 중 일부입니다. 패치 또는 기타 공동 작업에서 미묘한 공백 변경 사항을 도입하는 것은 매우 쉽습니다. 편집자가 자동으로 공백을 도입하고 파일이 Windows 시스템에 닿으면 줄 끝이 바뀔 수 있기 때문입니다. Git에는 이러한 문제를 해결하는 데 도움이되는 몇 가지 구성 옵션이 있습니다.

core.autocrlf

Windows에서 프로그래밍하고 그렇지 않은 사람과 작업하는 경우 (또는 그 반대의 경우) 언젠가 줄 끝 문제가 발생할 수 있습니다. 이는 Windows가 파일의 줄 바꿈에 캐리지 리턴 문자와 줄 바꿈 문자를 모두 사용하는 반면 Mac 및 Linux 시스템은 줄 바꿈 문자 만 사용하기 때문입니다. 이것은 크로스 플랫폼 작업의 미묘하지만 매우 성가신 사실입니다. Windows의 많은 편집기는 기존 LF 스타일 줄 끝을 CRLF로 자동으로 바꾸거나 사용자가 Enter 키를 누를 때 두 줄 끝 문자를 모두 삽입합니다.

Git은 파일을 인덱스에 추가 할 때 CRLF 줄 끝을 LF로 자동 변환하고 파일 시스템에 코드를 체크 아웃 할 때 그 반대로 자동 변환하여이를 처리 할 수 ​​있습니다. core.autocrlf 설정을 사용하여이 기능을 켤 수 있습니다. Windows 컴퓨터를 사용하는 경우 true로 설정합니다. 이렇게하면 코드를 체크 아웃 할 때 LF 끝이 CRLF로 변환됩니다.

$ git config --global core.autocrlf true

LF 라인 엔딩을 사용하는 Linux 또는 Mac 시스템을 사용하는 경우 파일을 체크 아웃 할 때 Git이 자동으로 변환하는 것을 원하지 않습니다. 그러나 CRLF로 끝나는 파일이 실수로 도입되면 Git이이를 수정하도록 할 수 있습니다. core.autocrlf를 입력으로 설정하여 커밋시 CRLF를 LF로 변환하도록 Git에 지시 할 수 있습니다.

$ git config --global core.autocrlf input

이 설정은 Windows 체크 아웃에서는 CRLF로 끝나지만 Mac 및 Linux 시스템과 저장소에서는 LF로 끝납니다.

Windows 전용 프로젝트를 수행하는 Windows 프로그래머라면이 기능을 끄고 config 값을 false로 설정하여 저장소에 캐리지 리턴을 기록 할 수 있습니다.

$ git config --global core.autocrlf false

원하는 경우 다음을 사용하여 git core 구성에서이 기능을 비활성화 할 수 있습니다.

git config core.autocrlf false

그러나 사용하여 경고를 제거하는 것이 좋습니다.

git config core.autocrlf true

참고 URL : https://stackoverflow.com/questions/5834014/lf-will-be-replaced-by-crlf-in-git-what-is-that-and-is-it-important

반응형