본문 바로가기

[개인 웹사이트 만들기]

.gitignore 사용법

반응형

window 환경에서 개발코드를 작성하고 테스트할 때 EC2 환경과 다르기 때문에 윈도우 용 가상환경(ysy_env_win)을 만들어서 사용한다.

 

그래서 프로젝트 디렉토리를 그대로 commit 후 push 하게 되면 EC2 서버에서는 불필요한 디렉토리(ysy_env_win)이 포함된다. 이를 해결하기 위해 .gitignore를 사용한다.

 

gitignore은 Git 저장소에서 특정 파일이나 디렉토리를 버전 관리에서 제외하도록 지정하는 파일이다. 이를 통해 불필요한 파일이나 민감한 정보를 Git에 커밋하지 않도록 할 수 있다.

 

.gitignore 사용법

.gitignore 이름의 빈파일을 생성해주고 

아래 규칙을 이용해서 파일을 작성한다.

# 로그 파일 제외
*.log

# 빌드 디렉토리 제외
build/

# 환경설정 파일 제외
.env

# 특정 파일 제외
secret_key.txt

# 캐시 파일 및 시스템 파일 제외
*.cache
.DS_Store
Thumbs.db

 

git bash에서

$ git add .gitignore
$ git commit -m "update install_dependencies.sh"
$ git push -u origin +master

 

git push를 하게되면 자동으로 code pipeline이 실행되고

리포지토리를 확인해보면

 

무시되지 않는 상황 발생 해결

 

gitignore에 추가한 ysy_env_win 디렉토리는 존재하지 않는다.

 

추가로 config/settings.py도 우분투와 윈도우 환경에서 다른 설정값을 넣어주어야 하는데 

그대로  push 하게 되면 다시 수정해야 하는 상황이 생기게 된다.

그래서 .gitignore 파일에 config/settings.py도 추가해서 리포지토리에 들어가지 않도록 하였다.

 

하지만 서버에는 config/settings.py파일이 남아 있어야 하므로 

scripts/install_independencies.sh 수정한다.

 

scripts/install_independencies.sh 

cd /var/www/ysy_project
find . ! -name "my_settings.py" ! -path "./config" ! -path "./config/settings.py" -delete

# my_settings.py와 ./config/settings.py 파일 그리고 ./config 디렉토리를 제외한 모든 파일을 제거한다.

 

 

 

 

 

 

반응형