Git gitignore 文件介绍

发布于 2024-09-22 14:56:14 字数 3914 浏览 11 评论 0

.gitignore 文件

在 github 上可以找到各种语言的 git 忽略模板: gitignore-template

Git bash 中使用 touch .gitignore 命令生成 .gitignore 文件

基本规则

.DS_Store
node_modules
/dist


# local env files
.env.local
.env.*.local

# Log files
npm-debug.log*
yarn-debug.log*
yarn-error.log*
pnpm-debug.log*

# Editor directories and files
.idea
.vscode
*.suo
*.ntvs*
*.njsproj
*.sln
*.sw?

匹配规则

.gitignore 文件中,每一行指定一个匹配规则。

查看 Git 官网匹配规则

规则说明
.a忽略所有 .a 结尾的文件
!lib.a!lib.a 除外
/TODO/TODO 仅仅忽略项目根目录下的 TODO 文件,不包括 subdir/TODO
build/忽略 build/ 目录下的所有文件,过滤整个 build 文件夹
doc/.txt忽略 doc/notes.txt 但不包括 doc/server/arch.txt
bin/忽略当前路径下的 bin 文件夹,该文件夹下的所有内容都会被忽略, 不忽略 bin 文件
/bin表示忽略根目录下的 bin 文件
/.c表示忽略 cat.c ,不忽略 build/cat.c
debug/.obj忽略 debug/io.obj ,不忽略 debug/common/io.objtools/debug/io.obj
/foo忽略 /foo , a/foo , a/b/foo
a//b忽略 a/b , a/x/b , a/x/y/b
!/bin/run.sh不忽略 bin 目录下的 run.sh 文件
*.log忽略所有以 log 结尾的文件
config.php忽略当前路径的 config.php 文件
/mtk/过滤整个文件夹
/mtk/do.c过滤某个具体文件
fd1/*忽略目录 fd1 下的全部内容;不管是根目录下的 /fd1/ 目录,还是某个子目录 /child/fd1/ 目录,都会被忽略
/fd1/*忽略根目录下的 /fd1/ 目录的全部内容
/*
!.gitignore
!/fw/
/fw/*
!/fw/bin/
!/fw/sf/

忽略全部内容,但是不忽略 .gitignore 文件、根目录下的 /fw/bin//fw/sf/ 目录;注意要先对 bin/ 的父目录使用 ! 规则,使其不被排除。

需要注意的是,gitignore 还可以指定要将哪些文件添加到版本管理中 如:

  • !*.zip
  • !/mtk/one.txt

唯一的区别就是规则开头多了一个感叹号

假如我们只需要管理 /mtk/ 目录中的 one.txt 文件,这个目录中的其他文件都不需要管理,那么 .gitignore 规则应写为: /mtk/*!/mtk/one.txt

注意: 如果不慎在创建 .gitignore 文件之前就 push 了项目,那么即使你在 .gitignore 文件中写入新的过滤规则,这些规则也不会起作用,Git 仍然会对所有文件进行版本管理。简单来说出现这种问题的原因就是 Git 已经开始管理这些文件了,所以你无法再通过过滤规则过滤它们。当然, 解决办法是清理 git 缓存

设置全局 .gitignore

如果你想避免提交像 .DS_Store 或 Vim swp 这样的文件,可以设置一个全局的 .gitignore 文件。

创建文件:

touch ~/.gitignore

然后运行:

git config --global core.excludesFile ~/.gitignore

或者手动将以下内容添加到 ~/.gitconfig 中:

[core]
  excludesFile = ~/.gitignore

你还可以创建一个列表,列出你希望 Git 忽略的内容。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

壹場煙雨

暂无简介

0 文章
0 评论
22 人气
更多

推荐作者

玍銹的英雄夢

文章 0 评论 0

我不会写诗

文章 0 评论 0

十六岁半

文章 0 评论 0

浸婚纱

文章 0 评论 0

qq_kJ6XkX

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文