상세 컨텐츠

본문 제목

.gitignore, .gitattributes

IT 일반

by 폴리프레임 2024. 9. 16. 17:37

본문

반응형

.gitignore와 .gitattributes는 둘 다 Git에서 파일 및 디렉터리의 처리를 제어하는 데 사용되지만, 각 파일의 목적과 기능은 다릅니다.

 

.gitignore

- Git 저장소에 추적하지 않을 파일 또는 디렉터리를 정의합니다.

- 개발 중 생기는 임시 파일, 빌드 결과물, 또는 사용자 환경에만 필요한 설정 파일 등을 Git에서 무시하도록 설정합니다.

- 예를들면,  node_modules/ 디렉터리, dist/ 디렉터리 등은 용량이 커서 굳이 올리지 않고, 내려받는 경우에 package.json에 근거하여 관련 모듈을 다운 받을 수 있기 때문입니다.

- 또한 .env 파일 및 .log 확장자를 가진 모든 파일은 주로 api key 등 환경변수를 갖고 있으므로 다른 사람에게 노출이 되면 안되므로 github 에 올리지 않을 목적으로 .gitignore 파일에 리스트 합니다.

# .gitignore

node_modules/
dist/
.env
*.log

 

.gitattributes

- Git에서 파일의 속성을 정의하고 처리 방식을 지정합니다.

- 특정 파일의 줄바꿈 방식(LF 또는 CRLF), 병합 전략, diff 전략 등 파일을 어떻게 관리할지를 설정합니다. 주로 텍스트 파일의 줄바꿈 문제, 이진 파일의 처리 방법 등을 설정할 때 유용합니다.

# .gitattributes

*.js text eol=lf
*.jpg binary
*.md text
* text=auto

*.js 파일은 텍스트 파일로 처리되고 줄바꿈은 LF로 설정되며, .jpg 파일은 이진 파일로 간주되며, .md 파일은 일반 텍스트 파일로 처리됩니다.

* text=auto는 모든 파일을 대상으로, Git이 파일을 텍스트 파일인지 이진 파일인지 자동으로 감지하게 합니다. 텍스트 파일로 감지되면 줄바꿈(EOL) 변환이 적용됩니다. 이 설정은 협업 시 운영체제 간의 줄바꿈 충돌을 방지하는 데 유용합니다.

'IT 일반' 카테고리의 다른 글

Three.js에서 GLSL 사용  (2) 2024.09.18
shader 프로그래밍  (6) 2024.09.18
경도, 위도, Longitude, Latitude  (0) 2024.09.12
navigator - BOM  (1) 2024.06.04
.json 과 .json5 의 차이점  (1) 2024.06.03

관련글 더보기