.qignore 설정 및 배포 제외 규칙#
이 문서는 배포 파일을 생성할 때 포함되거나 제외되는 파일의 규칙과 .qignore 파일의 작성 방법을 설명합니다.
.qignore#
.qignore는 배포 패키지에서 제외할 파일이나 폴더의 패턴을 직접 정의하는 파일입니다.
위치: 프로젝트 루트 디렉토리 (
./.qignore)형식: 각 줄마다 하나의 패턴을 입력합니다.
주석:
#으로 시작하는 줄은 주석으로 처리됩니다.빈 줄: 내용은 무시됩니다.
패턴 매칭:
fnmatch와일드카드(*,?)를 사용할 수 있습니다.
작성 예시
# 로그 파일 제외
*.log
# 로컬 시크릿 파일 제외
secrets/*
# 특정 데이터 디렉토리 제외
data/
패턴의 끝이 /인 경우 해당 디렉토리와 내부의 모든 파일이 제외됩니다.
기본 제외 규칙#
.qignore 파일을 작성하지 않더라도, 다음 항목들은 기본적으로 배포 대상에서 제외됩니다.
파일명 기준#
.env로 시작하는 파일 (예:.env,.env.local)db.json.bash로 시작하는 파일.DS_Store.dockerignore,.flake8,.python-version특정 확장자 파일:
.ipynb,.zip,.tar.gz,.log파일명이
code인 경우파일명이
qupiato인 경우
경로 및 디렉토리 기준#
유효하지 않은 심볼릭 링크(Broken Symbolic Link)
숨김 디렉토리 내부의 파일 (예:
.idea/,.cursor/,.vscode/등)디렉토리명이
logs인 경로 내부의 파일
탐색 제외 디렉토리#
다음 디렉토리는 파일 탐색(os.walk) 단계에서 탐색하지 않고 건너뜁니다.
__pycache__.venv.git
포함 여부 판정 기준#
파일의 배포 포함 여부는 다음 순서에 따라 결정됩니다.
기본 제외 규칙에 해당하면 제외됩니다.
.qignore패턴과 전체 경로가 일치하면 제외됩니다..qignore패턴과 파일명이 일치하면 제외됩니다.위 조건에 해당하지 않는 경우 배포 파일에 포함됩니다.
권장 사용법#
팀이나 개발 환경에서 공통으로 제외해야 할 항목은
.qignore에 명시합니다.민감한 정보(Secrets), 대용량 산출물, 로컬 테스트용 파일은 배포 패키지 용량 최적화와 보안을 위해 제외하는 것을 권장합니다.
배포에 반드시 필요한 파일만 남긴다는 원칙으로 패턴을 관리합니다.