.gitignore / Git 忽略文件无效解决方案

忽略 Git 仓库中的一些文件或文件夹.

Git 忽略文件/文件夹

要想忽略掉 Git 仓库中的一些文件或文件夹可以在仓库的根目录中创建 .gitignore 文件,指示 Git 在您进行提交时要忽略哪些文件和目录。 要与克隆仓库的其他用户共享忽略规则,请提交 .gitignore 文件到您的仓库。【针对没有提交过的】

  1. 打开 Git Bash。

  2. 导航到 Git 仓库的位置。

  3. 为仓库创建 .gitignore 文件。

    1
    $ touch .gitignore

也可以不使用命令行,手动创建一个 .gitignore ,然后在里面输入想要忽略的文件或文件夹即可,比如我的:

1
2
3
4
5
6
7
*.iq
*.mat
*.jpg
*.zip
*.rar
*.7z
cmake-build-debug/*

具体忽略的一些模板可以在这个仓库查看 👉github/gitignore: A collection of useful .gitignore templates

比如 cpp 的项目可以这样忽略

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
# Prerequisites
*.d

# Compiled Object files
*.slo
*.lo
*.o
*.obj

# Precompiled Headers
*.gch
*.pch

# Compiled Dynamic libraries
*.so
*.dylib
*.dll

# Fortran module files
*.mod
*.smod

# Compiled Static libraries
*.lai
*.la
*.a
*.lib

# Executables
*.exe
*.out
*.app


.gitignore / git 忽略文件无效解决方案

如果想要忽略已提交的文件,则必须在添加忽略该文件的规则之前取消跟踪它,即先删除本地缓存,然后重新提交。 从终端取消执行以下操作。

1
2
3
4
git rm -r --cached .
git add .
git commit -m "update .gitignore"
git push -u origin master


参考文献

gitignore - How to ignore certain files in Git - Stack Overflow

忽略文件 - GitHub Docs

Git - gitignore Documentation (git-scm.com)

.gitignore file - ignoring files in Git | Atlassian Git Tutorial

忽略特殊文件 - 廖雪峰的官方网站 (liaoxuefeng.com)