三、Git本地仓库基本操作——git仓库忽略跟踪文件

1. .gitignore文件

在工作区中的文件内容,很多时候我们基本只关注源文件。所以,肯定有些文件是不想使用git去管理的,比如:

  • 编译生成的中间文件
  • 相关的IDE工程文件(当然也可以进行git管理)
  • 一些固定内容的说明文件等等

如何忽略这些我们不想进行git管理的文件?

方法就是:在工作目录下,创建一个 .gitignore 的文件,然后在文件里面列出来我们要忽略哪些文件即可。

也就是说 .gitignore 文件相当于设置了一个过滤规则,可以指定哪些文件可以不纳入git进行版本管理。

2. .gitignore文件的规范

.gitignore 文件的编写是有一定的规范 的,如下:

  1. 所有空行或者以 # 开头的行都会被 Git 忽略
  2. 可以使用标准的 glob 模式匹配,它会递归地应用在整个工作区中。(glob 模式是指 shell 所使用的简化了的正则表达式
  3. 匹配模式可以以(/)开头防止递归
  4. 匹配模式可以以(/)结尾指定目录
  5. 要忽略指定模式以外的文件或目录,可以在模式前加上叹号(!)取反

具体的例子解释如下:

命令格式 作用
*.o 忽略工作目录下所有的 .o 文件
/TODO 只忽略当前目录下的 TODO 文件,而不忽略子目录下的 subdir/TODO 文件
build/ 忽略 build/ 目录下的所有文件
!lib.o 跟踪 lib.o 文件,即使在前面忽略了所有的 .o 文件
doc/*.txt 只是忽略 doc/notes.txt,但不忽略它的子目录的 doc/server/arch.txt
doc/**/ *.pdf 忽略 doc/ 目录及其所有子目录下的 .pdf 文件

详细的解释可以参考下面这篇博文:

https://blog.csdn.net/HYEHYEHYE/article/details/120861604

3. 示例

比如,我在 .gitignore 文件中,写入如下内容:

*.o
*.obj
*.bak
*.dep
*.lib
*.a
*.i
*.d
*.exe

就相当于在工作目录下,忽略了所有上面写的这些后缀格式的文件了。

如下图所示:

猜你喜欢

转载自blog.csdn.net/luobeihai/article/details/128166491