반응형
1. 배경 상황
회사 컴퓨터에서 VSCode가 갑자기 안열려서 급한대로 IntelliJ로 프로젝트를 편집하려고 했는데 아래처럼 처음보는 .idea
라는 폴더가 추가되어있었다. 무지성 .gitignore에 추가하기 전에 무슨 역할을 하는지 찾아보고 정리해보았다.
2. .idea 폴더란?
.idea 폴더는 IntelliJ의 프로젝트별 세팅 파일을 보관하는 폴더로(JetBrain 공식 설명 참조), 해당 폴더 안의 파일이 없어도 프로젝트 코드는 정상 동작하고, 해당 설정값은 작업자 환경에 맞춰서 변경되기 때문에 git 리포지토리에 소스코드를 커밋할 때에는 해당 폴더는 제외하고 커밋을 하는 것이 좋다.
3. .idea를 git 저장소에 제외하는 방법(.gitignore)
.idea 폴더를 git commit에서 제외하기 위해서는 .gitignore 에 폴더 경로를 추가하면 해당 폴더 내의 모든 파일들이 무시되기 때문에 아래와 같이 명시해도 되고,
# .gitignore 파일
.idea
혹은 JetBrain 공식 깃헙 리포지토리에서 권장하는 아래 .gitignore 파일 예시를 참고해서 .idea 폴더의 특정 파일만 무시하도록 작성해도 된다.
# Covers JetBrains IDEs: IntelliJ, 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
# CMake
cmake-build-*/
# Mongo Explorer plugin
.idea/**/mongoSettings.xml
# File-based project format
*.iws
# IntelliJ
out/
# mpeltonen/sbt-idea plugin
.idea_modules/
# JIRA plugin
atlassian-ide-plugin.xml
# Cursive Clojure plugin
.idea/replstate.xml
# SonarLint plugin
.idea/sonarlint/
# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties
# Editor-based Rest Client
.idea/httpRequests
# Android studio 3.1+ serialized cache file
.idea/caches/build_file_checksums.ser
'DevOps' 카테고리의 다른 글
MacOS에서 direnv 설정하기 (0) | 2025.01.23 |
---|---|
[VSCode]터미널에서 VSCode 바로 열기(code 명령어) (0) | 2024.12.08 |
[Terraform]테라폼이란? MacOS에서 테라폼 설치하기 (0) | 2024.12.07 |
[Kubernetes]쿠버네티스 Pod to Local 파일 복사하는 방법 (0) | 2024.12.06 |
[MacOS]패키지 관리 툴 Homebrew 다운로드하기 (1) | 2024.12.05 |