[Git] .gitignore 파일은 뭘까? 그리고 언제 사용할까?

2021. 7. 30. 16:39·⚙️ Git
-->
.gitignore이라는 이름은 들었지만, 정작 사용할 필요성이 느껴지지 않아서
그냥 넘어가던 지식이었습니다. 하지만, 이번에 깃허브를 사용하다가
필요성이 느껴져서 공부하고 정리하게 되었네요 👋

 

 

.gitignore 파일이란?

.gitignore 파일이란 Git 버전 관리에서 제외할 파일 목록을 지정하는 파일입니다.

 

git으로 프로젝트를 관리하다 보면 git에는 올려서는 안 되거나 불필요한 파일들이 있을 것입니다.

예를 들자면, 빌드 파일, 환경 설정 파일, API 키 등이 있겠네요

 

물론, 명령어로 일부 파일만 제외하면 되겠지만, 모든 커밋에 그런 행동을 하는 것은 매우 귀찮고 힘든 일이겠죠? 따라서, gitignore라는 파일을 만들어서 무시할 파일들을 넣어주는 것입니다.

 

 

그러면 .gitignore 파일을 생성해볼까요? 😁

.gitignore은 자신이 이용하는 에디터의 .git 파일이 존재하는 곳과 같은 디렉터리에 생성해주면 됩니다.

스크린샷 2021-07-29 오후 5 55 58

 

물론, 아래의 예시처럼 터미널에서도 .gitignore 파일을 만들어줄 수 있습니다!

// .gitignore 파일을 생성
$ touch .gitignore

// .gitignore은 숨김 파일이므로, ls가 아닌 ls -a, la, ls -al 등의 명령어로 확인 가능
$ la
$ ls -a
$ ls -al

// .gitignore 파일을 수정. 물론 에디터에서도 수정 가능함
$ vi .gitignore

 

 

그 후에, Git의 추적(Track)을 피하고 싶은 파일명들을 위에서 만들어준 .gitignore 파일에 적어주면 됩니다. 매우 쉽죠? 😋

스크린샷 2021-07-29 오후 6 15 32

 

 

github에 있는 파일들을 삭제하고 .gitignore에 적용

아쉽게도 이미 git 버전 관리에 들어가 있는 파일들을 .gitignore 파일에 적용한다고 해서, 이미 관리되고 있는 파일들이 제외되지는 않습니다.

 

즉, Git이 계속해서 해당 파일들을 추적(Track)하고 있다는 뜻입니다.

 

만약, 자신의 원격 저장소에 있는 파일을 삭제하고 앞으로 추적(Track)을 받고 싶지 않다면 어떻게 해야 할까요?


방법은 간단합니다! 수동으로 해당 파일들을 아래의 명령어를 이용하여 버전 관리에서 제외시켜주면 됩니다.

 

// 현재 레포지토리의 캐시를 모두 삭제한다.
$ git rm -r --cached .

// .gitignore에 넣은 파일 목록들을 제외한, 모든 파일들을 다시 추적(Track)하도록 설정
$ git add .

$ git commit -m "Remove ignored files from tracking"

이렇게 하면 .gitignore 파일에 추가한 파일들은 더 이상 추적(Track)을 받지 않게 됩니다. 

 

 

.gitignore을 쉽게 사용하도록 도와주는 사이트

.gitignore.io라는 이 사이트에서는 자신의 프로젝트 환경을 위에다가 입력하면, 그에 맞는 .gitignore 파일을 만들어줍니다.

 

저는 아직 사용해보진 않았지만, gitignore 파일을 어떻게 사용해야 할지 모르는 분들은 이 사이트를 이용해보면 좋을 거 같네요 :)

 


References

gitignore란 무엇일까?

.gitignore 설정하기

 

 

저작자표시 (새창열림)

'⚙️ Git' 카테고리의 다른 글

[Git] Github Personal access Token 생성/변경. + 403 에러 해결 방법  (0) 2021.08.16
'⚙️ Git' 카테고리의 다른 글
  • [Git] Github Personal access Token 생성/변경. + 403 에러 해결 방법
MoriOS
MoriOS
기억하기 위해 기록하는 공간 🖋️
  • MoriOS
    MoriOS
    MoriOS
  • 전체
    오늘
    어제
    • 분류 전체보기 (43) N
      • 📌 Swift (10)
      • 📱 iOS (4)
      • 💡 Algorithm (1)
      • ❕Data structure (4)
      • 🪙 Python (0)
      • ⚙️ Git (2)
      • 🖋️ TIL Journal (19) N
      • 📝 Etc (3)
  • 블로그 메뉴

    • GitHub
  • 인기 글

  • 태그

    remote url
    편의 이니셜라이저
    swift 중복 없는 랜덤 숫자
    swift 알고리즘 팁
    swift
    todo 앱
    후행클로저
    swift 아스키
    joined()
    swift ismultiple
    the requested url returned error: 403!
    shuffled()
    github 기반 협업 방식
    convenience init
    트레일링 클로저
    TiL
    random(in:)
    클로저란?
    ios
    ios 데이터 저장
    Optional
    GitHub
    swift 대소문자
    github the requested url returned error: 403
    github 협업 방식
    weak vs unowned
    weak
    Split
    swift optional
    Components
  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
MoriOS
[Git] .gitignore 파일은 뭘까? 그리고 언제 사용할까?
상단으로

티스토리툴바