dev._.note

[Git] .gitignore 작성 정리 본문

Dev/환경설정

[Git] .gitignore 작성 정리

Laena 2024. 1. 26. 03:30

.gitignore 파일이란?

프로젝트에 원하지 않는 백업 파일이나 로그파일 혹은 컴파일된 파일들을 Git에서 제외시킬 수 있는 설정 파일을 말한다.
예를 들어 깃허브에 커밋할 때 필요하지 않은 파일은 업데이트시키지 않는 기능이다.

파일을 제외시킴으로써 업로드 용량을 줄일 수도 있고, 소스 보안도 챙길 수 있다.


.gitignore 자동생성 사이트

운영체제, 개발환경(IDE), 프로그래밍 언어를 입력하고 생성하면 .gitignore 파일을 자동으로 생성해 준다.

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com

 


.gitignore 파일 생성하기

1. 터미널에서 루트 디렉터리로 이동

cd [경로]

 

명령을 사용하여 원하는 레포지터리의 루트 디렉터리로 이동해 준다.

해당 레포지터리의 최상위 디렉터리에 생성해야 한다.

* 경로 복사 : 루트 디렉터리에서 shift+command+c

 

2. .gitignore 파일을 생성

touch .gitignore

명령을 사용하여 해당 디렉터리에 .gitignore 파일을 생성해준다.

여기까지 완료하고 해당 디렉터리를 확인하면, 아래 화면처럼 .gitignore 파일이 생성되었을 것이다.

 

여기서 아래의 흐릿한 두 파일이 안 보이는 경우(macOS에서는 자동으로 .으로 시작하는 파일들이 숨김 처리)

이 때는 해당 디렉터리에서 shift+command+. 키를 눌러주면 확인 가능하다.

 

3. .gitignore을 열어 생성한 설정 파일을 적용

 


Github Repository에 적용하기

// 스테이징 된 것들 일단 모두 되돌리기. 왜냐하면 add된 상태에서 .gitignore가 안통하기 때문
// 선택
sudo git rm -r --cached . // 깃 트랙킹 풀어주기
sudo git add . // 깃 커밋 할 파일 대상 설정

// 필수
sudo git commit -m "Apply .gitignore" // commit
sudo git push origin master // push

// 처리된 파일 확인
git status --ignored

 


.gitignore 파일 규칙

표현  의미 
 #, 빈라인  #은 주석을 의미하며, 빈라인은 아무런 영향을 주지 않습니다.
 *.a  확장자가 .a 인 모든 파일을 무시합니다.
 folder_name/  해당 폴더의 모든 파일을 무시합니다.
 folder_name/*.a  해당 폴더의 확장자가 .a 인 모든 파일을 무시합니다.
 folder_name/**/*.a  해당 폴더 포함한 하위 모든 폴더에서 확장자가 .a 인 모든 파일을 무시합니다.
 /*.a  현재 폴더의 확장자가 .a 인 모든파일을 무시합니다.

 


ignore 처리된 파일들 정리하기

git clean -X 명령어를 이용하면 ignore 처리된 파일들을 제거할 수 있다

// 현재 작업 디렉토리에 존재하는 ignore 처리된 파일들의 목록을 표시 
$ git clean -Xn 

// 위 명령어에 의해 나타난 파일들을 삭제
$ git clean -Xf

 

-X
(대문자) 옵션은 ignore 처리된 파일들만 정리한다.
ignore 처리된 파일뿐만 아니라 Git에서 관리하지 않는 (untracked) 파일까지 제거하려면
 
-x
(소문자) 옵션을 사용한다.

 

'Dev > 환경설정' 카테고리의 다른 글

[Audio Cutter] 오디오 길이 편집  (0) 2024.02.15
[GIT] Pull Request 방법 정리  (0) 2024.02.06
Kingfisher 설치  (0) 2024.01.18
[Git] branch, reset, merge의 원리  (1) 2023.12.30
[Xcode] CocoaPods(코코아팟)설치  (0) 2023.12.14