반응형
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 디렉토리를 제외한 모든 파일을 제거한다.
반응형
'[개인 웹사이트 만들기]' 카테고리의 다른 글
[Django] 페이지 공통 부분 분리 (0) | 2025.01.22 |
---|---|
[Django] resume 정적 페이지 추가 (0) | 2025.01.22 |
[Django] startbootstrap을 활용한 templates, static 구성 방법 (0) | 2024.12.24 |
[Django] app 생성, URL 매핑 (0) | 2024.12.23 |
AWS+Django 기반 웹사이트 제작 9 (CI/CD Test) (0) | 2024.12.21 |