为了git忽略我的.idea/道路,我需要做些什么?
ctote@ubuntu:~/dev/1$ git status
On branch master
Your branch is up-to-date with 'origin/master'.
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git checkout -- <file>..." to discard changes in working directory)
modified: .idea/.name
modified: .idea/misc.xml
modified: .idea/modules.xml
modified: .idea/vcs.xml
modified: .idea/workspace.xml
modified: src/Receiver.java
modified: test/1/agent/WindowsQueryHandlerTest.java
Untracked files:
(use "git add <file>..." to include in what will be committed)
lib/
mp1.iml
no changes added to commit (use "git add" and/or "git commit -a")
Run Code Online (Sandbox Code Playgroud)
ctote@ubuntu:~/dev/1$ cat .gitignore
*.class
# Package Files #
*.war
*.ear
# IDEA config files
.idea/
Run Code Online (Sandbox Code Playgroud)
Cri*_*scu 216
.gitignore 只忽略新添加的(未跟踪)文件.
如果您已将文件添加到存储库,则将照常跟踪所有更改,即使它们与.gitignore规则匹配也是如此.
要从存储库中删除该文件夹(不将其从磁盘中删除),请执行以下操作:
git rm --cached -r .idea
Run Code Online (Sandbox Code Playgroud)
do0*_*o01 24
添加.idea/到.gitignore文件
在终端运行此命令以完成任务:)
git rm -rf .idea
git commit -m "delete .idea"
git push
Run Code Online (Sandbox Code Playgroud)
Jas*_*wel 19
git rm --cached .idea/
Run Code Online (Sandbox Code Playgroud)
echo '.idea' >> .gitignore
Run Code Online (Sandbox Code Playgroud)
git add .gitignore
git commit -m "Removed .idea files"
Run Code Online (Sandbox Code Playgroud)
要删除“致命的:pathspec'.idea'与任何文件都不匹配”,仅在目录仍返回未跟踪状态时使用:
git clean -f -d .idea
如果按照其他答案中的步骤进行操作后,您仍然发现在 bash 或 powershell 中运行的 git 实例只是继续跟踪 .idea/ 文件夹,那么请尝试此操作!
我发现 Jet Brains IDE 有自己的 .gitignore,并运行自己的 git 实例,这将覆盖您的 .gitignore 设置!
我解决此问题的方法是导航到 /.idea/.gitignore,并将其内容更改为:
/**
Run Code Online (Sandbox Code Playgroud)
以便忽略文件夹中的所有内容。
下图显示了如何从 Jetbrains IDE 中导航到 .gitignore 文件。
对于那些得到fatal: pathspec '.idea' did not match any filesw0lf答案的人:
您只需要包含.idea文件夹的完整路径.
首先,做一个git status,它应该向您展示.idea给出您当前所在位置的路径.
然后,在w0lf建议的命令中包含路径: git rm --cached -r example/path/to/.idea