Git忽略文件.gitignore
Git忽略文件.gitignore
小码同学.gitignore介绍
在使用Git时,我们有时候并不需要将所有文件都保存到版本库中的,像一些依赖文件比较大的话,我们就可以不添加到版本库,减少占用仓库空间,比如Java下的target
目录下的的.class文件
。在Git的工作区根目录下有一个.gitignore
文件,用于标记需要忽略
添加到版本库的文件或目录。
一些常见忽略的例子:
- vscode自动创建的.vscode文件
- 前端安装依赖生成的巨大的node_modules文件夹
- Electron打包生成的build文件夹
- IDE 自动生成的.idea文件
- 隐私文件,例如密码配置文件之类。
.gitignore忽略规则
.gitignore
文件内匹配到的文件在提交时会被忽略掉
(忽略的文件不会被提交到仓库)
字符 | 备注 |
---|---|
/ | 表示目录 |
* | 匹配多个字符 |
? | 匹配单个字符 |
[] | 包含单个字符的匹配列表 |
! | 不匹配该目录或文件 |
# | 注释,不做匹配 |
\ | 转义,比如用于转义#,eg:# |
实战
下面是一个Hexo的项目:
1 | .DS_Store |
规则解释
规则 | 备注 |
---|---|
.DS_Store | 忽略根目录的.DS_Store 文件 |
.vscode | 忽略根目录的.vscode 文件 |
.deploy*/ | 忽略根目录前缀为.deploy 的文件夹所有内容 |
.deploy_git*/ | 忽略根目录前缀为.deploy_git 的文件夹所有内容 |
.idea | 忽略根目录的.idea 文件 |
*.log | 忽略后缀为.log 的全部文件 |
node_modules/ | 忽略根目录下的node_modules文件夹所有文件 |
public/ | 忽略根目录下的public文件夹所有文件 |
themes/butterfly/.git | 忽略根目录下的themes/butterfly/.git文件夹所有文件 |
!source/ | 根目录source文件夹不匹配,也就是source文件夹一定会提交到Git仓库 |
**/test | 表示在根目录下的任何子目录为test的文件夹在提交时都会被忽略 |
#这是注释 | 单纯只是注释,没有任何语义 |
评论
匿名评论隐私政策
✅ 你无需删除空行,直接评论以获取最佳展示效果