Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

히콩쓰 개발 일지

.gitignore 정의 및 git에 추가할 목록에서 제외하기 본문

Git

.gitignore 정의 및 git에 추가할 목록에서 제외하기

용히콩 2023. 11. 9. 20:49

.gitignore 란?

git을 이용하면서 많이 볼 수밖에 없는 파일인 .gitignore 은 쉽게 말해서 "git 버전 관리에 사용하지 않을 파일, 즉 git에 올리고 싶지 않은 파일을 정의하는 파일" 이다.

[ .gitignore 작성 목적 ]

git을 이용해 협업을 진행하다보면 개인의 운영체제나 IDE 버전 등과 같은 부분이 달라 충돌이 일어나기도 한다.
이 때, gitignore을 사용하여 git에서 관리할 파일을 제거하고 git에 push하는 방법을 통해 문제를 해결할 수 있다.

[ .gitignore 작성 방법 ]

가장 쉬운 방법은 자동 완성 사이트 "gitignore.io" 를 이용하는 것이다.
(아래 이미지를 클릭해서 gitignore.io로 이동할 수 있다)


.gitignore 파일은 제외하고 싶은 파일, 폴더명 등을 기입하면 된다.

  • 특정 파일 제외하기
fileName.java
  • 현재 경로에 위치한 fileName만 제외하기
/fileName.java
  • 폴더(ex. idea) 안의 파일 제외하기
idea/
  • 폴더(ex. idea) 안의 특정 파일 제외하기
idea/fileName.java
  • 확장자 파일 제외하기
*.txt
*.xml
*.iml
  • 예외 작성하기
!fileName.java
# User-specific stuff
.idea
*.iws
*.iml
*.ipr
out/

[ .gitignore 적용하기 ]

.gitignore 파일은 프로젝트 디렉토리의 최상단에 위치해야 한다.
이 때, Intellij와 같은 IDE를 사용할 경우, .idea 라는 폴더에 .gitignore가 존재하여 헷갈릴 수 있지만,
⭐.idea 폴더는 IDE가 생성한 것이므로 프로젝트 디렉토리 최상단에 위치한 .gitignore 파일을 신경써야 한다⭐

(위 사진에서 .idea 폴더의 하위 파일들이 노란색으로 표시된 것은 .gitignore 파일에서 .idea를 작성해 제외시켰기 때문이다.)

.gitignore 적용 시점은 ❗무조건 프로젝트 시작할 때❗해야 한다.

하지만, 세상에는 변수가 참 많으니 두 가지 경우로 굳이 나눠보겠다.
1. 프로젝트를 git에 올릴 때부터 이미 .gitignore를 원하는대로 작성한 경우
2. 프로젝트 진행 도중 .gitignore를 작성하고자 하는 경우

첫 번째 경우에 해당한다면, 이미 자잘한 충돌 없이 협업이 원활하게 이뤄지고 있을 가능성이 높다.
하지만 두 번째 경우에 해당한다면, 몇 가지 작업을 더 진행해줘야 한다.


[ Cache란? ]

두 번째 경우의 작업을 진행하기에 앞서, Cache의 정의에 대해 짚고 넘어가겠다.
Cache는 컴퓨터 과학에서 데이터나 값을 미리 복사해 놓는 임시 장소를 말하는데,
프로젝트 진행 도중 .gitignore를 적용하고자 한다면 이미 Cache에 불필요한 파일들이 들어가 있을 것이다.


따라서, 우리는 cache를 삭제하는 작업을 해줄 것이다.

git rm -r --cached 		//Cache 삭제

이렇게 해도 Cache가 삭제되지 않는 경우가 있다. 그럴 때는 아래의 코드와 같이 지정하여 입력하면 된다.

git rm --cached .idea .xml -r

캐시 삭제까지 완료했다면, .gitignore 파일을 push 해준다.

git add .
git status 		// 원하는 파일이 add 됐는지 확인
git commit -m "Modify: .gitignore" 		// 커밋 메시지
git push

마지막으로, Repository에서 .gitignore 파일을 확인해 잘 적용된 것을 확인한다.

 

끝!😚

'Git' 카테고리의 다른 글

git origin HEAD와 Local HEAD가 다를 때  (1) 2023.11.14