git 忽略规则不按预期工作

84 阅读1分钟

在 IntelliJ IDEA 中设置了以下的忽略规则:

### IntelliJ IDEA ###
!/src/main/resources/*.properties
!/src/main/resources/*.yml

但是这些文件仍然没有被忽略,可能有以下几种原因:

  1. .gitignore 文件没有被正确提交到 Git 仓库中。请确保 .gitignore 文件被提交到 Git 仓库中,并且不被其他 .gitignore 文件或全局忽略规则所覆盖。

  2. 文件已经被 Git 跟踪,或者在之前已经被提交到 Git 仓库中。如果这些文件已经被 Git 跟踪或已经提交到仓库中,那么需要使用 git rm --cached 命令将它们从 Git 跟踪中删除。例如,要将 example.yml 文件从 Git 跟踪中删除,请运行以下命令:(可以使用通配符 *.yml 来匹配任何以 .yml 结尾的文件,而不必指定特定的文件名。)

    git rm --cached example.yml
    

    然后,将以下行添加到 .gitignore 文件中,以确保它们不会再次被 Git 跟踪:

    ### IntelliJ IDEA ###
    /src/main/resources/*.properties
    /src/main/resources/*.yml
    
  3. 忽略规则语法存在问题。请确保忽略规则语法正确。例如,上面提到的忽略规则应该适用于以下目录结构:

    project-root/
    ├── .gitignore
    └── src/
        └── main/
            └── resources/
                ├── example.properties
                └── example.yml
    

    如果目录结构不同,或者在 .gitignore 文件中使用了不正确的语法,那么忽略规则可能不会按预期工作。