이 글에서는 gitignore 파일로 특정 파일또는 디렉토리 제외 혹은 무시하는 방법에 대해서 설명합니다.
- gitignore 파일
- gitignore cache 처리하기(주의사항)
gitignore 파일
Git을 사용하면 내 workspace에는 있어야하지만, remote(원격)에 반영을하지 않는 파일들이 있습니다.
예를 들어 __pycache__파일은 push할 필요가 없습니다.
특정 파일이나 폴더의 변경사항 추적 및 push를 제외하기 위해 gitignore가 있습니다.
.git 디렉토리에서 .gitignore 파일을 만듭니다.
.gitignore 파일에서 무시할 파일을 넣으면 됩니다.
예를 들어 test.txt파일과 test 폴더를 ignore 한다고 하면, 아래와 같이 작성해 줍니다.
## 파일 ignore
test.txt
## 확장자 ignore
*.text
*.exe
*.zip
## 디렉토리 ignore
test/
디렉토리 와 같은 경우 무시하는 디렉토리 하위의 파일이나 디렉토리 또한 ignore 됩니다.
.gitignore 파일에서 # 뒤에 쓰는 내용은 주석입니다.
.gitignore 파일에 작성하면, 바로 반영되지 않습니다.
add > commit > push를 해야 ignore 가 적용 됩니다.
$ git add .gitignore
$ git commit -m "ignore file&folder config"
$ git push origin master
gitignore cache 처리하기(주의사항)
gitignore를 하더라도 cache된 내용들은 계속 추적이 됩니다. 그러므로, 아래와 같이 처리해 주어야 합니다.
** 주의사항 **
기존의 git의 추척을 받고 있던 파일이나 디렉토리는 .gitignore 파일에 작성하고 add > commit > push 하더라도 ignore 되지 않습니다.
이때는, 기존에 가지고 있는 cached를 치워야 합니다.
## 파일
git rm --cached test.txt
## 확장자
git rm --cached *.txt
## 디렉토리
git rm --cached test/ -r
git rm --cache 명령어는 Staging Area(add 를 하고나서의 영역)에서 파일을 제거하고 working directory(Local)에서는 파일을 유지하는 명령어입니다.
위의 명령어를 실행한 후 꼭 commit을 해줘야 합니다.
lswhh@DESKTOP-HQPQNKV:~/imgFilterApp$ git rm --cached *.pyc
rm 'imageProcessor/__pycache__/__init__.cpython-38.pyc'
rm 'white_box_cartoonizer/__pycache__/cartoonize.cpython-38.pyc'
rm 'white_box_cartoonizer/__pycache__/guided_filter.cpython-38.pyc'
rm 'white_box_cartoonizer/__pycache__/network.cpython-38.pyc'
lswhh@DESKTOP-HQPQNKV:~/imgFilterApp$ git commit -m"cache remove"
[main 0a3184e] cache remove
4 files changed, 0 insertions(+), 0 deletions(-)
delete mode 100644 imageProcessor/__pycache__/__init__.cpython-38.pyc
delete mode 100644 white_box_cartoonizer/__pycache__/cartoonize.cpython-38.pyc
delete mode 100644 white_box_cartoonizer/__pycache__/guided_filter.cpython-38.pyc
delete mode 100644 white_box_cartoonizer/__pycache__/network.cpython-38.pyc
기존에 관리하고 있던 파일을 cached 명령어를 쓰지 않고 무시하는 방법이 있습니다.
명령어는 다음과 같습니다.
$ git update-index --assume-unchanged [파일명]
아래와 같이 무시를 지정하고 다시 취소하는 방법도 있습니다.
$ git update-index --no-assume-unchanged [파일명]
수정사항 무시 파일 조회는 다음 명령어를 사용합니다.
$ git ls-files -v
'IT' 카테고리의 다른 글
github에 신규 리파지토리를 만들고 로컬 디렉토리 연결하기 (0) | 2024.01.21 |
---|---|
Git URL 확인하기 / origin 주소 확인 - git remote url (0) | 2024.01.21 |
Github 무료 제한 및 정책 요약 (0) | 2024.01.21 |
Window(윈도우)에서 Ubuntu(우분투)로 원격데스크톱 연결하기 (0) | 2024.01.21 |
우분투에 한글입력기 설치하기 (22.04) (0) | 2024.01.21 |