可以通过在项目的根目录下创建一个名为 .gitignore 的文件来忽略Git版本控制中不需要的文件、目录和文件类型。 这个文件包含了一些规则,告诉Git哪些文件或目录应该被忽略,不要上传
可以通过在项目的根目录下创建一个名为.gitignore
的文件来忽略Git版本控制中不需要的文件、目录和文件类型。
这个文件包含了一些规则,告诉Git哪些文件或目录应该被忽略,不要上传到仓库中,这样有助于减小仓库的大小和提高Git的效率。
在开发过程中往往会不断增加新的文件和目录,如果不对这些不必要的文件进行忽略,会将它们与代码一起提交到Git仓库中,导致仓库过大,造成意料之外的问题。
下面就让我们来看看如何忽略Git版本控制中的文件、目录和文件类型。
- 创建.gitignore文件
在项目根目录下创建一个新文件并命名为.gitignore
,如果已有此文件则直接编辑即可。
- 添加规则
在.gitignore
中添加规则,告诉Git那些文件或目录不需要被版本控制。 常见的规则有:
1) 独立文件:每行一个文件或文件夹路径,以“/”结尾表示忽略此目录,否则忽略此文件。
# 忽略 .DS_Store 文件 .DS_Store # 忽略 node_modules 目录 node_modules/ # 忽略 dist 目录 dist/
2) 通配符:匹配符合一定规则的文件或文件夹名。
# 忽略所有 .md 文件 *.md # 忽略所有 .log 文件 *.log # 忽略所有 .txt 文件,但不包括 README.txt *.txt !README.txt # 忽略所有 .js 和 .map 文件 *.js *.map
3) 注释:以“#”开头表示注释,Git会忽略这行内容。
# 我是注释,这行规则不会生效
4) 特殊字符:在规则中添加特殊字符时需要转义。
# 忽略格式为 __pycache__ 的文件夹 __pycache__/ # 忽略.gitignore本身 .gitignore # 忽略以`.`开头的所有文件 .*
- 提交忽略规则
将.gitignore
文件和更新后的.gitignore
规则添加到Git仓库中。
# 添加.gitignore文件到暂存区 git add .gitignore # 提交忽略规则 git commit -m "add .gitignore file to ignore some files"
- 检查忽略规则
通过git check-ignore
命令可以检查某个文件是否被忽略,还可以查看被忽略的原因。
# 检查 .DS_Store 文件是否被忽略 $ git check-ignore -v .DS_Store .gitignore:1:*.DS_Store .DS_Store # 检查 node_modules 目录是否被忽略 $ git check-ignore -v node_modules .gitignore:2:node_modules/ node_modules
可以看到git check-ignore
命令返回行号和匹配的规则。如果命令未返回任何输出,则表示文件未被忽略。
总结
通过.gitignore
文件来告诉Git哪些文件或目录不需要被版本控制,可以减小仓库的大小,提高Git的效率,并且确保仓库中只包含必要的文件和目录。在撰写.gitignore
规则时,可以使用通配符、注释和特殊字符等语法,还可以通过git check-ignore
命令查看被忽略的文件和规则。