实验环境:
- windows10
- intellij idea 2023.3.6
前置知识:什么是 .gitignore 文件?.gitignore 文件是用来做什么的?
在任何当前工作的 Git 仓库中,每个文件都是这样的:
- 追踪的(tracked) 这些是 Git 所知道的所有文件或目录。这些是新添加(用 git add 添加)和提交(用 git commit 提交)到主仓库的文件和目录。
- 未被追踪的(untracked) - 这些是在工作目录中创建的,但还没有被暂存(或用 git add 命令添加)的任何新文件或目录。
- 被忽略的(ignored) - 这些是 Git 知道的要全部排除、忽略或在 Git 仓库中不需要注意的所有文件或目录。本质上,这是一种告诉 Git 哪些未被追踪的文件应该保持不被追踪并且永远不会被提交的方法。
使用项目主目录下的.gitignore
通常,一个 .gitignore 文件会被放在仓库的根目录下。这样可以管理整个仓库下的文件是否需要提交。.gitignore 文件能存在于任何地方,并且可以有多个,但只对该文件所在同级目录和同级目录的子目录下的文件生效。
在文件中加入.idea/*即可。如果发现commit中还是存在.idea 文件夹中的内容,请尝试清理git缓存
使用命令
git rm -r --cached -f ./
因为.gitignore只能忽略未被track的文件,而git本地缓存。如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。
我的 .gitignore文件
target/
!.mvn/wrapper/maven-wrapper.jar
!**/src/main/**/target/
!**/src/test/**/target/
### IntelliJ IDEA ###
.idea/modules.xml
../.idea/jarRepositories.xml
.idea/compiler.xml
.idea/libraries/
.idea/*
*.iws
*.iml
*.ipr
.gitignore
### Eclipse ###
.apt_generated
.classpath
.factorypath
.project
.settings
.springBeans
.sts4-cache
### NetBeans ###
/nbproject/private/
/nbbuild/
/dist/
/nbdist/
/.nb-gradle/
build/
!**/src/main/**/build/
!**/src/test/**/build/
### VS Code ###
.vscode/
### Mac OS ###
.DS_Store
如果不显示.gitignore文件,去
settings -> Editor -> File Types -> ignored files and floders 中看看是不是设置.gitignore 不在项目中显示。如果没有设置,在项目的主目录下新建一个.gitignore文件。