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
디렉토리에 있어야 합니다.
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