来自.idea文件夹的gitignore是什么?

Bor*_*ard 462 git intellij-idea gitignore webstorm

可能重复:
Intellij Idea 9/10,要检查(或不检入)源控件的文件夹是什么?

我开始使用WebStorm进行Web开发,并且不确定要添加什么以及从Git存储库中排除什么.显然,文件.idea夹中的某些文件应该像外部库设置一样受版本控制(jsLibraryMappings.xml但是其他文件可能会经常更改并且是特定于开发人员的(例如workspace.xml).

WebStorm/IntelliJ IDEA的推荐.gitignore模式是什么?

PS已经有关于此的问题,但通常只关注是否包括整个.gitignore文件夹或是否完全排除它.我认为文件.idea夹中的一些文件应该是版本控制的,而其他文件不应该,我试图找出哪些文件.

hif*_*iks 406

官方支持页面应该回答您的问题.

因此,在.gitignore中,您可能会忽略以.gitignore.iws以及workspace.xml文件结尾的文件.

  • 更好的语法是`**/.idea/workspace.xml**/.idea/tasks.xml` (104认同)
  • @ Vanquish46:更具体地说,**递归遍历所有子文件夹,因此在子文件夹中也会忽略符合条件的文件. (37认同)
  • 为什么`**/`比`*/`更好? (36认同)
  • 正确的语法似乎是`*/.idea/workspace.xml*/.idea/tasks.xml` (9认同)
  • 该文档建议"共享所有.iml模块文件",因此带有以下两行的.gitignore应该没问题:.idea/workspace.xml .idea/tasks.xml (6认同)
  • 那么`.idea/watcherTasks.xml`怎么样?此文件包含非常依赖于用户的设置,如可执行文件的路径. (2认同)
  • 我通常会忽略整个文件夹 - 因为我几乎是唯一一个在我的工作场所使用这种IDE的人. (2认同)
  • 最新官方Jetbrains链接是:https://intellij-support.jetbrains.com/hc/en-us/articles/206544839-How-to-manage-projects-under-Version-Control-Systems (2认同)
  • 提交想法文件夹有什么好处?在阅读另外两个需要忽略的文件后,我将继续忽略它,除非有人能给我一个很好的理由来保持它的版本控制。 (2认同)

Gab*_*iro 218

我只是想提出一个更新的替代方案.有一个在线工具可以.gitignore根据您可能正在使用的操作系统,IDE和编程语言生成文件.

gitignore.io


编辑免责声明:不要复制此文件,而是复制网站生成的文件,他们在保持更新方面做得很好.这只是一个例子.

生成的文件IntelliJ包含以下内容

# Created by https://www.gitignore.io/api/intellij

### Intellij ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff:
.idea/workspace.xml
.idea/tasks.xml
.idea/dictionaries
.idea/vcs.xml
.idea/jsLibraryMappings.xml

# Sensitive or high-churn files:
.idea/dataSources.ids
.idea/dataSources.xml
.idea/dataSources.local.xml
.idea/sqlDataSources.xml
.idea/dynamic.xml
.idea/uiDesigner.xml

# Gradle:
.idea/gradle.xml
.idea/libraries

# Mongo Explorer plugin:
.idea/mongoSettings.xml

## File-based project format:
*.iws

## Plugin-specific files:

# IntelliJ
/out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

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

# *.iml
# modules.xml
Run Code Online (Sandbox Code Playgroud)

  • 为什么你会完全忽略`.idea/dictionaries`? (3认同)
  • 我打算使用通用的"你",抱歉.但是由于它必须与linting相关,将它们放在源代码中是完全有意义的,因为条目实际上适用于每个人:字典特定于项目的内容!例如,当处理C的解析器时,*everyone*将遇到"punctuator"一词被错误地标记为拼写错误的问题...除非您共享字典. (2认同)

xgq*_*rms 27

https://www.gitignore.io/api/jetbrains

https://www.gitignore.io/api/jetbrains创建

### JetBrains ###
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and Webstorm
# Reference: https://intellij-support.jetbrains.com/hc/en-us/articles/206544839

# User-specific stuff:
.idea/workspace.xml
.idea/tasks.xml
.idea/dictionaries
.idea/vcs.xml
.idea/jsLibraryMappings.xml

# Sensitive or high-churn files:
.idea/dataSources.ids
.idea/dataSources.xml
.idea/dataSources.local.xml
.idea/sqlDataSources.xml
.idea/dynamic.xml
.idea/uiDesigner.xml

# Gradle:
.idea/gradle.xml
.idea/libraries

# Mongo Explorer plugin:
.idea/mongoSettings.xml

## File-based project format:
*.iws

## Plugin-specific files:

# IntelliJ
/out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties
fabric.properties

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

# *.iml
# modules.xml
# .idea/misc.xml 
# *.ipr 
Run Code Online (Sandbox Code Playgroud)

  • 为什么不直接做 `.idea/*` 呢?节省大量线路。 (3认同)
  • 好!如果你想要一些东西,你可以去[https://www.gitignore.io/](https://www.gitignore.io/),它可以帮助你轻松找到你想要的东西! (2认同)

Cer*_*eal 13

Github 在他们的程序中使用以下 .gitignore

https://github.com/github/gitignore/blob/master/Global/JetBrains.gitignore

# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm
# 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

# 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/modules.xml
# .idea/*.iml
# .idea/modules

# 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

# 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
Run Code Online (Sandbox Code Playgroud)


小智 9

您可以通过添加.idea/*.gitignore文件中来简单地忽略所有这些。


Fra*_*kie 6

几年来,我一直支持使用.gitignore具有建议的配置的 IntelliJ 专用程序。

不再。

IntelliJ的更新非常频繁,内部配置文件的规范更改的频率比我想要的要多,并且JetBrains旗舰软件擅长基于maven / gradle / etc构建文件自动配置自身。

因此,我的建议是将所有编辑器配置文件都保留在项目之外,并让用户根据自己的喜好配置编辑器。诸如代码样式之类的事情可以并且应该在构建级别进行配置。说直接在Maven / Gradle / sbt / etc上使用Google Code StyleCheckStyle

这样可以确保一致性,并使编辑器文件脱离我个人认为应该存在的源代码。

  • 这正是我的观点,正如我在回答中所解释的那样,我们不应该仅仅为了 JB 而为“.gitignore”而烦恼。 (5认同)