
💡 3줄 요약
pyinstaller로 스크립트를 .exe 파일로 빌드하고, PyCharm에서 Git과 연동하며 실전 문제들을 해결했습니다.생산성, 일관성, 그리고 팀 협업의 기반을 다지기 위해.
Unreal Engine 프로젝트는 Binaries, Intermediate 등 빌드 산출물과 캐시가 방대해 용량 관리가 번거롭습니다. 팀 프로젝트 시, 누군가는 이 파일들을 커밋에 포함시키고, 누군가는 정리 규칙을 잊어버리는 등 일관성이 깨지기 쉬웠습니다.
또한, 제가 만든 편리한 Python 스크립트를 팀의 비개발자분들도 쉽게 사용하게 하려면 .exe 파일로 배포할 필요가 있었습니다.
이러한 반복적이고 실수가 잦은 작업들을 자동화하고, 누가 사용하든 일관된 결과를 보장하는 개발 환경을 구축하기 위해 칼을 빼 들었습니다.
# 삭제할 폴더 목록 정의
$DirectoriesToRemove = @(
".idea", ".vscode", ".vs",
"Binaries", "Build", "DerivedDataCache", "Intermediate", "Saved"
)
# 현재 경로 기준으로 재귀적으로 폴더를 찾아 삭제
$DirectoriesFound = Get-ChildItem -Include $DirectoriesToRemove -Directory -Recurse -ErrorAction SilentlyContinue
foreach ($DirectoryFound in $DirectoriesFound) {
Remove-Item $DirectoryFound.FullName -Recurse -Force
}
# --onefile 옵션으로 단일 실행파일 생성
pyinstaller --onefile --name UnrealWatcher main.py
빌드 산출물, 가상환경(.venv), IDE 설정(.idea) 등 버전 관리가 필요 없는 파일들이 Git에 올라가지 않도록 .gitignore를 설정하고, PyCharm 터미널을 이용해 GitHub에 푸시하는 과정을 연습했습니다.
config.json 파일을 못 찾는 문제.exe 파일 실행 시 필요한 config.json을 찾지 못해 프로그램이 비정상 종료됨.dist/ 폴더에 수동 복사 → 다음 날 자동화 계기 마련..gitignore에 추가했는데도 파일이 계속 커밋되는 문제.venv와 .idea가 계속 추적됨.git rm -r --cached .venv .idea
git add .gitignore
git commit -m "Stop tracking .venv and .idea"
git push
$Env:VAR와 CMD의 %VAR% 사용법 혼란자동화는 단순히 코드를 짜는 것에서 끝나지 않았습니다. IDE, 버전 관리 시스템, OS(터미널) 등 개발 환경 전반에 대한 깊은 이해가 필수라는 것을 깨달았습니다. 특히 .gitignore 설정 등 초기 세팅이 팀의 생산성과 경험에 큰 영향을 준다는 것도 다시금 인지했습니다.
이날 고민하고 작성한 코드들은 아래 GitHub 저장소에서 확인하실 수 있습니다.
"실무를 위한 자동화는 결국 나와 팀의 실수를 미연에 방지하는 좋은 습관을 만들어가는 과정입니다. 오늘의 첫걸음을 꾸준히 이어나가겠습니다."