github/gitignore · Global/JetBrains.gitignore
JetBrains .gitignore 템플릿 해설
JetBrains.gitignore가 IntelliJ·PyCharm·WebStorm 등의 .idea 폴더에서 개인 설정과 민감 파일만 골라 무시하는 이유와 .idea 전체 무시와의 차이를 설명합니다.
JetBrains.gitignore는 IntelliJ IDEA, PyCharm, WebStorm, GoLand, PhpStorm, Rider, CLion, Android Studio가 공유하는 .idea 폴더를 다룬다. 템플릿은 .idea 전체를 제외하지 않고 개인 상태·민감 정보·자동 생성 파일만 골라 막는다.
JetBrains의 공식 안내도 코드 스타일, 실행 구성, 인스펙션 프로필처럼 팀에 도움이 되는 설정은 공유하고 workspace.xml 같은 개인 파일은 제외하라고 권한다.
규칙별 해설
| 패턴 | 무엇을, 왜 무시하나 |
|---|---|
.idea/**/workspace.xml.idea/**/tasks.xml.idea/**/usage.statistics.xml.idea/**/dictionaries.idea/**/shelf | 개인 작업 상태열린 파일, 커서 위치, 작업(task) 기록, 개인 사전, 보류(shelve)한 변경이다. 사람마다 다르고 자주 바뀐다. |
.idea/**/dataSources/.idea/**/dataSources.local.xml.idea/**/sqlDataSources.xml.idea/**/dynamic.xml.idea/**/dbnavigator.xml | 데이터베이스 연결DB 도구의 연결 정보와 스키마 캐시다. 로컬 연결 설정에는 사용자 이름 같은 개인 정보가 들어간다. |
.idea/**/gradle.xml.idea/**/libraries | 빌드 도구 동기화 결과Gradle·Maven 프로젝트를 가져올 때 IDE가 다시 만드는 설정과 라이브러리 목록이다. |
out/*.iws.idea_modules/cmake-build-*/ | IDE 출력·레거시 형식IntelliJ 컴파일 출력, 옛 파일 기반 프로젝트 형식의 작업 공간 파일, CLion의 CMake 빌드 폴더다. |
atlassian-ide-plugin.xml.idea/sonarlint/com_crashlytics_export_strings.xmlcrashlytics.propertiesfabric.properties | 플러그인 파일JIRA, SonarLint, Crashlytics 플러그인이 만드는 설정과 캐시다. |
.idea/httpRequestshttp-client.private.env.json | HTTP 클라이언트 비밀내장 HTTP 클라이언트의 요청 기록과, 토큰·비밀번호를 넣는 private 환경 파일이다. 공개 값은 http-client.env.json에 두고 커밋한다. |
.idea/caches/build_file_checksums.ser.idea/**/contentModel.xml.idea/**/aws.xml | 캐시Android Studio 빌드 파일 체크섬 캐시, 자동 생성 모델, AWS Toolkit의 개인 설정이다. |
실무에서 주의할 점
- Gradle·Maven 자동 가져오기를 쓴다면 템플릿 주석에 있는
.idea/modules.xml,.idea/*.iml,*.iml규칙을 주석 해제하면 변경이 줄어든다. - 설정 공유가 필요 없다면 전역 gitignore에
.idea/를 넣는 방법도 있다. 이 경우 이 템플릿은 필요 없다. - 이미
.idea/workspace.xml이 커밋돼 있으면 규칙을 추가해도 계속 추적된다.git rm --cached .idea/workspace.xml로 정리한다.
원본 템플릿
JetBrains.gitignore
# Covers JetBrains IDEs: IntelliJ, GoLand, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio, WebStorm and Rider# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839# User-specific stuff.idea/**/workspace.xml.idea/**/tasks.xml.idea/**/usage.statistics.xml.idea/**/dictionaries.idea/**/shelf# AWS User-specific.idea/**/aws.xml# Generated files.idea/**/contentModel.xml# Sensitive or high-churn files.idea/**/dataSources/.idea/**/dataSources.ids.idea/**/dataSources.local.xml.idea/**/sqlDataSources.xml.idea/**/dynamic.xml.idea/**/uiDesigner.xml.idea/**/dbnavigator.xml# Gradle.idea/**/gradle.xml.idea/**/libraries# Gradle and Maven with auto-import# When using Gradle or Maven with auto-import, you should exclude module files,# since they will be recreated, and may cause churn. Uncomment if using# auto-import.# .idea/artifacts# .idea/compiler.xml# .idea/jarRepositories.xml# .idea/modules.xml# .idea/*.iml# .idea/modules# *.iml# *.ipr# CMakecmake-build-*/# Mongo Explorer plugin.idea/**/mongoSettings.xml# File-based project format*.iws# IntelliJout/# mpeltonen/sbt-idea plugin.idea_modules/# JIRA pluginatlassian-ide-plugin.xml# Cursive Clojure plugin.idea/replstate.xml# SonarLint plugin.idea/sonarlint/# see https://community.sonarsource.com/t/is-the-file-idea-idea-idea-sonarlint-xml-intended-to-be-under-source-control/121119.idea/sonarlint.xml# Crashlytics plugin (for Android Studio and IntelliJ)com_crashlytics_export_strings.xmlcrashlytics.propertiescrashlytics-build.propertiesfabric.properties# Editor-based HTTP Client.idea/httpRequestshttp-client.private.env.json# Android studio 3.1+ serialized cache file.idea/caches/build_file_checksums.ser# Apifox Helper cache.idea/.cache/.Apifox_Helper.idea/ApifoxUploaderProjectSetting.xml# Github Copilot persisted session migrations, see: https://github.com/microsoft/copilot-intellij-feedback/issues/712#issuecomment-3322062215.idea/**/copilot.data.migration.*.xml
템플릿 출처: github/gitignore/Global/JetBrains.gitignore @356fd7b (2026-09-11) · CC0-1.0