# 忽略文件与 .gitignore

URL: https://caijiao.org/git/history/ignore
Source: docs/git/history/ignore.md
Description: 本章介绍 Git 中的忽略文件机制和 '.gitignore' 文件的配置方法，帮助管理不需要纳入版本控制的文件。

有些文件不适合纳入 Git 版本控制，如编译生成的二进制文件、临时文件和敏感信息。

## .gitignore 文件

`.gitignore` 是一个文本文件，用于指定 Git 应该忽略的文件和目录。

### 创建 .gitignore

在项目根目录创建 `.gitignore` 文件，写入规则，例如：

```

## 忽略所有 .log 文件

\*.log

## 忽略 node_modules 目录

node_modules/

## 忽略所有 .env 文件

.env

```

## 常见规则说明

- `*` 表示匹配任意字符
- `/` 结尾表示目录
- `!` 用于否定规则，表示不忽略某些文件

## 生效条件

- `.gitignore` 只对未被跟踪的文件生效，已经被 Git 跟踪的文件需要先移除缓存：

```bash
git rm --cached <文件路径>
```

合理配置 `.gitignore` 能减少无关文件的提交，保持仓库整洁。
