Java용 Gitignore 파일

MD Aminul Islam 2023년6월20일
  1. Java용 .gitignore 파일 개요
  2. .gitignore 파일을 수동으로 생성하기 위해 따라야 할 규칙
  3. Java에서 .gitignore 파일의 예
Java용 Gitignore 파일

오늘의 튜토리얼에서는 예제를 통해 Java용 .gitignore 파일에 대해 설명하고 .gitignore를 수동으로 생성하는 동안 따라야 할 규칙을 나열합니다.

Java용 .gitignore 파일 개요

Git에서 ignore라는 용어는 Git이 무시해야 하는 파일을 추적하지 않고 이미 추적된 다른 파일에 영향을 주지 않는 데 사용됩니다. 예를 들어 Github와 같은 Git 서비스에 특정 파일을 보내지 않으려는 경우가 있습니다.

무시해야 하는 파일을 지정할 수 있는 .gitignore라는 파일이 있습니다. 일반적으로 이 파일은 기계에서 생성됩니다. .gitignore에서 일반적으로 지정되는 일부 파일은 다음과 같습니다.

  • 캐시에 대한 의존성.
  • 컴파일된 코드.
  • /bin, /out 또는 /target과 같은 출력 디렉토리를 구축합니다.
  • .log, .lock 또는 .tmp와 같은 일부 런타임 파일이 생성되었습니다.
  • Thumbs.db 또는 .DS_Store와 같은 숨겨진 시스템 파일.
  • IDE config 파일.

.gitignore 파일을 수동으로 생성하기 위해 따라야 할 규칙

.gitignore 파일을 수동으로 만들려면 다음 규칙을 따라야 합니다.

  • Git은 # 또는 빈 줄로 시작하는 줄을 무시합니다.
  • 표준 glob 패턴만 따르고 재귀적으로 적용해야 합니다.
  • 재귀를 피하기 위해 /로 패턴을 시작할 수 있습니다.
  • 디렉토리를 지정하기 위해 /로 패턴을 끝낼 수 있습니다.
  • 패턴을 부정하려면 !로 시작해야 합니다.

Java에서 .gitignore 파일의 예

아래는 Intellij IDE 프로젝트를 위해 특별히 생성된 .gitignore의 예입니다. 한 번 보자.

### Intellij ###
# 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

### Intellij Patch ###
# Comment Reason: https://github.com/joeblau/gitignore.io/issues/186#issuecomment-215987721

# *.iml
# modules.xml
# .idea/misc.xml
# *.ipr

# Sonarlint plugin
# https://plugins.jetbrains.com/plugin/7973-sonarlint
.idea/**/sonarlint/

# SonarQube Plugin
# https://plugins.jetbrains.com/plugin/7238-sonarqube-community-plugin
.idea/**/sonarIssues.xml

# Markdown Navigator plugin
# https://plugins.jetbrains.com/plugin/7896-markdown-navigator-enhanced
.idea/**/markdown-navigator.xml
.idea/**/markdown-navigator-enh.xml
.idea/**/markdown-navigator/

# Cache file creation bug
# See https://youtrack.jetbrains.com/issue/JBR-2257
.idea/$CACHE_FILE$

# CodeStream plugin
# https://plugins.jetbrains.com/plugin/12206-codestream
.idea/codestream.xml

# Azure Toolkit for IntelliJ plugin
# https://plugins.jetbrains.com/plugin/8053-azure-toolkit-for-intellij
.idea/**/azureSettings.xml

### Java ###
# Compiled class file
*.class

# Log file
*.log

# BlueJ files
*.ctxt

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.nar
*.ear
*.zip
*.tar.gz
*.rar

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*
replay_pid*

# End of https://www.toptal.com/developers/gitignore/api/java,intellij

.gitignore 파일은 root 디렉토리에 있어야 합니다.

MD Aminul Islam avatar MD Aminul Islam avatar

Aminul Is an Expert Technical Writer and Full-Stack Developer. He has hands-on working experience on numerous Developer Platforms and SAAS startups. He is highly skilled in numerous Programming languages and Frameworks. He can write professional technical articles like Reviews, Programming, Documentation, SOP, User manual, Whitepaper, etc.

LinkedIn