Programing

줄 끝 설정을 변경하는 방법

lottogame 2020. 2. 13. 00:28
반응형

줄 끝 설정을 변경하는 방법


줄 끝 처리 방법에 대한 설정을 변경할 수있는 파일이나 메뉴가 있습니까?

3 가지 옵션이 있습니다 :

  1. Windows 스타일 체크 아웃, Unix 스타일 커밋

    Git은 텍스트 파일을 체크 아웃 할 때 LF를 CRLF로 변환합니다. 텍스트 파일을 커밋하면 CRLF가 LF로 변환됩니다. 크로스 플랫폼 프로젝트의 경우 Windows에서 권장되는 설정입니다 ( "core.autocrlf"가 "true"로 설정 됨)

  2. 그대로 체크 아웃, 유닉스 스타일 커밋

    텍스트 파일을 체크 아웃 할 때 Git은 변환을 수행하지 않습니다. 텍스트 파일을 커밋하면 CRLF가 LF로 변환됩니다. 크로스 플랫폼 프로젝트의 경우 이것은 Unix에서 권장되는 설정입니다 ( "core.autocrlf"는 "input"으로 설정 됨).

  3. 있는 그대로 체크 아웃하고있는 그대로 커밋

    Git은 텍스트 파일을 체크 아웃하거나 커밋 할 때 변환을 수행하지 않습니다. 크로스 플랫폼 프로젝트에는이 옵션을 선택하지 않는 것이 좋습니다 ( "core.autocrlf"가 "false"로 설정 됨)


이것을 제어하는 ​​일반적인 방법은 git config

예를 들어

git config --global core.autocrlf true

자세한 내용은 이 링크에서 Pro Git 링크를 아래로 "core.autocrlf"섹션으로 스크롤하십시오.


파일 이 저장된 파일 을 알고 싶다면 다음 명령을 실행하십시오.

git config --global --edit

그리고 git global config 파일이 텍스트 편집기에서 열리면 파일이 어디서로드되었는지 확인할 수 있습니다.


OS에서 사용되는 줄 끝 형식

  • Windows : CR(캐리지 리턴 \r) 및 LF(LineFeed \n) 쌍
  • OSX, Linux : LF(LineFeed \n)

우리는 두 가지 방법으로 각 OS에 대해 자동 수정 줄 끝 형식을 갖도록 git을 구성 할 수 있습니다.

  1. 힘내 글로벌 구성
  2. .gitattributes파일 사용

글로벌 구성

Linux / OSX에서
git config --global core.autocrlf input

커밋 CRLFLF문제가 해결 됩니다.

Windows에서
git config --global core.autocrlf true

이것은 Windows에서 체크 아웃 할 때 모든 LF것이CRLF

.gitattributes 파일

.gitattributes팀의 모든 사람이 구성을 설정하기를 원하지 않기 때문에 파일 을 보관하는 것이 좋습니다 . 이 파일은 repo의 루트 경로에 보관해야하며 존재하는 경우 git은이를 존중합니다.

* text=auto

이것은 모든 파일을 텍스트 파일로 취급하고 체크 아웃시 종료하고 LF자동으로 커밋시 OS 라인으로 변환합니다 . 명시 적으로 말하고 싶다면

* text eol=crlf
* text eol=lf

첫 번째는 체크 아웃을위한 것이고 두 번째는 커밋을위한 것입니다.

*.jpg binary

모든 .jpg이미지를 이진 파일로 취급하십시오 . 따라서 전환이 필요하지 않습니다


모든 개발자에게 재배포 할 수있는 저장소 설정 솔루션의 경우 .gitattributes 파일 에서 text 속성을 확인 하십시오. 이런 식으로 개발자는 저장소에 직접 줄 끝을 설정할 필요가 없으며 저장소마다 다른 줄 끝 스타일을 가질 수 있으므로 global core.autocrlf는 적어도 제 생각에는 최고는 아닙니다.

예를 들어 주어진 경로에서이 속성을 설정 해제합니다 [ . -text]는 체크인 및 체크 아웃시 git이 줄 끝을 건드리지 않도록합니다. 대부분의 현대 텍스트 편집기는 두 가지 유형의 줄 끝을 처리 할 수 ​​있으므로 이것이 최선의 행동이라고 생각합니다. 또한 개발자가 체크인 할 때 줄 끝 변환을 계속 수행하려는 경우 특정 파일과 일치하도록 경로를 설정하거나 저장소에서 eol 속성 (.gitattributes)을 설정할 수 있습니다.

또한 .gitattributes 파일 및 텍스트 속성을 자세히 설명하는 관련 게시물을 확인하십시오. Git을 사용한 최상의 CRLF (캐리지 리턴, 줄 바꿈) 처리 전략은 무엇입니까?


PC 형식에서 UNIX 형식으로 변경된 파일 형식을 다시 변환하려면

(1) 거북 GIT를 다시 설치하고 "라인 끝 변환"섹션에서 "있는 그대로 체크 아웃-그대로 체크인"옵션을 선택했는지 확인하십시오.

(2) 나머지 구성을 그대로 유지하십시오.

(3) 한번 설치 완료

(4) UNIX 형식으로 변환 된 모든 파일 확장자를 텍스트 파일 (extensions.txt)로 작성하십시오.

ex:*.dsp
   *.dsw

(5) 파일을 복제본에 복사 GITBASH에서 다음 명령을 실행하십시오.

while read -r a;
do
find . -type f -name "$a" -exec dos2unix {} \;
done<extension.txt

참고 URL : https://stackoverflow.com/questions/10418975/how-to-change-line-ending-settings



반응형