IT

.git 속성 파일에서 text=auto의 목적은 무엇입니까?

itgroup 2023. 8. 16. 22:09
반응형

.git 속성 파일에서 text=auto의 목적은 무엇입니까?

주로.gitattributes파일이 있습니다.* text=auto의 목적은 무엇입니까?text=auto그 파일에?

문서에서:

의 각 행.gitattributes(또는).git/info/attributes) 파일 형식:

pattern attr1 attr2 ...

그래서 여기, 패턴은.*즉, 모든 파일을 의미하며 속성은text=auto.

무엇인가.text=auto문서에서 확인할 수 있습니다.

텍스트를 "자동"으로 설정하면 경로가 자동 줄 바꿈 정규화를 위해 표시됩니다.Git가 내용이 텍스트라고 결정하면 체크인 시 줄 끝이 LF로 정규화됩니다.

활성화되지 않은 경우 기본 동작은 무엇입니까?

지정되지 않음

텍스트 특성이 지정되지 않은 경우 Git는 코어를 사용합니다.파일 변환 여부를 결정하는 autocolf 구성 변수입니다.

무엇인가.core.autocrlf그래요? 문서에서:

   core.autocrlf

이 변수를 "true"로 설정하는 것은 텍스트 파일이 정규화되지 않는다는 점을 제외하고는 모든 파일에서 텍스트 속성을 "auto"로 설정하는 것과 거의 같습니다. 저장소에 CRLF가 포함된 파일은 터치되지 않습니다.리포지토리에 정규화된 줄 끝이 없더라도 작업 디렉토리에 CRLF 줄 끝을 사용하려면 이 설정을 사용합니다.이 변수는 입력으로 설정할 수 있으며, 이 경우 출력 변환이 수행되지 않습니다.

이 모든 것이 명백하다고 생각한다면, 당신은 혼자가 아닙니다.

제 말은 다음과 같습니다. 누군가 파일을 커밋하면 Git는 해당 파일이 텍스트 파일인지 아닌지 추측하고, 만약 그렇다면 모든 CR + LF 바이트가 LF 바이트로 대체되는 파일 버전을 커밋합니다.작업 트리의 파일 모양에는 직접적인 영향을 미치지 않으며, 파일을 체크아웃할 때 LF 바이트를 CR + LF 바이트로 변환하는 다른 설정도 있습니다.

권장 사항:

저는 퍼팅을 추천하지 않습니다.* text=auto에서.gitattributes파일. 대신 다음과 같은 것을 추천합니다.

*.txt text
*.html text
*.css text
*.js text

이것은 어떤 파일이 텍스트 파일인지 명시적으로 지정하며, CRLF는 객체 데이터베이스에서 LF로 변환됩니다(작업 트리에서는 그렇지 않습니다).우리는 로 레포를 했습니다.* text=auto그리고 Git는 이미지 파일이 텍스트 파일이라고 잘못 추측하여 개체 데이터베이스에서 CR + LF 바이트를 LF 바이트로 대체하면서 이미지 파일이 손상되었습니다.디버깅하는 것은 재미있지 않았습니다.

사해야하경우를 해야 하는 * text=auto그것을 …의 첫줄로 삼다..gitattributes나중에 라인이 오버라이드 할 수 있도록.이것은 점점 더 인기 있는 관행이 되고 있는 것 같습니다.

이렇게 하면 줄 끝이 정규화됩니다.출처: Kernel.org

텍스트를 "자동"으로 설정하면 경로가 자동 줄 바꿈 정규화를 위해 표시됩니다.Git가 내용이 텍스트라고 결정하면, Git의 줄 끝은 체크인 시 LF로 정규화됩니다.

종단 표준화를 적용하는 소스 코드 관리 시스템과 상호 운용하거나 리포지토리의 모든 텍스트 파일을 표준화하려면 모든 파일에 대해 텍스트 속성을 "auto"로 설정해야 합니다.

이렇게 하면 git가 텍스트로 간주하는 모든 파일이 저장소에서 정규화된(LF) 줄 끝 부분을 가지게 됩니다.

이 구성은 줄 끝 부분이 처리되는 방식과 관련이 있습니다.활성화하면 모든 줄 끝이 저장소에서 LF로 변환됩니다.작업 디렉터리에서 줄 끝이 변환되는 방법을 처리하는 다른 플래그가 있습니다.문제에 대한 자세한 내용은 https://www.kernel.org/pub/software/scm/git/docs/gitattributes.html 를 참조하십시오.

언급URL : https://stackoverflow.com/questions/21472971/what-is-the-purpose-of-text-auto-in-gitattributes-file

반응형