GitHub仓库中.gitignore的用途及用法是什么?求解释file tracking
Git文件追踪(File Tracking)是什么?
Git本质是帮你记录仓库文件改动的工具,文件追踪就是Git监控、记录仓库内文件状态变化的过程:
- 刚新建的文件默认是「未追踪」状态——Git完全不知道它存在,不会管它的任何改动
- 用
git add <文件名>把文件加入暂存区后,Git就开始追踪它了,之后的每一次修改、删除都会被Git记录,你能通过git status看到它的状态变化
.gitignore的用途
.gitignore是Git仓库里的特殊配置文件,核心作用就是告诉Git:这些文件/目录别管,不用追踪也别提交到远程仓库。
通常用来忽略的文件包括:
- 本地开发的临时文件(比如IDE缓存、编译生成的二进制文件、日志)
- 敏感信息(含密码的配置文件、密钥)
- 依赖包目录(比如Node.js的
node_modules、Python的venv) - 系统自动生成的文件(Mac的
.DS_Store、Windows的Thumbs.db)
简单说就是把那些只属于本地环境、没必要共享的文件排除在Git的管理范围外,避免它们乱入git status列表,也防止误把敏感/冗余文件推到远程。
.gitignore的使用方法
1. 创建文件
在仓库根目录新建.gitignore文件(注意开头的点,是隐藏文件),可以手动创建,也用命令:
touch .gitignore
2. 写忽略规则
每行一条规则,常见写法:
- 忽略单个文件:
config.ini - 忽略整个目录:
node_modules/(末尾加斜杠,明确是目录) - 忽略所有.log后缀的文件:
*.log - 忽略某个子目录下的特定文件:
build/output.exe - 例外规则(不想忽略某个匹配规则的文件):
!important.log(前面加感叹号)
3. 生效注意事项
- 只要把
.gitignore提交到仓库,规则就会自动生效 - 如果文件已经被Git追踪过(之前用
git add提交过),.gitignore对它无效。要让它生效,先把它从Git追踪列表移除:
git rm --cached <文件名>
提交这个修改后,.gitignore的规则就会对该文件生效。
4. 全局忽略配置
如果想让某个规则在所有本地Git仓库生效,可以配置全局.gitignore:
git config --global core.excludesfile ~/.gitignore_global
然后在~/.gitignore_global里写规则就行,适合忽略操作系统、IDE的通用临时文件。
内容的提问来源于stack exchange,提问作者Atharva Kote
相关产品推荐
相关产品推荐

