Git的.gitignore文件详解与常见用法

打印 上一主题 下一主题

主题 995|帖子 995|积分 2985

诸神缄默不语-个人CSDN博文目次
在一样寻常使用 Git 举行版本控制时,我们经常会遇到一些不必要被提交到远程堆栈的文件(例如日志文件、临时配置文件、环境变量文件等)。为了忽略这些文件的提交,Git 提供了一个非常有用的功能:.gitignore 文件
本文将详细介绍 .gitignore 的作用、用法,以及如何处理处罚已经被跟踪的文件。

  
一、什么是 .gitignore

.gitignore 是一个文本文件,用于告诉 Git 在版本控制中忽略指定的文件或文件夹。这些被忽略的文件不会被提交到远程堆栈,也不会显示在 git status 的输出中。
常见场景



  • 忽略操纵体系生成的临时文件(如 .DS_Store、Thumbs.db)。
  • 忽略 IDE 或编辑器生成的配置文件(如 .vscode、*.suo)。
  • 忽略包含敏感信息的文件(如 .env

    、credentials.json)。
  • 忽略自动生成的构建文件(如 node_modules、dist)。
二、创建 .gitignore 文件

创建方法

在项目根目次下创建 .gitignore 文件:
  1. touch .gitignore
复制代码
在文件中添加必要忽略的文件或文件夹。例如:
  1. # 忽略操作系统文件
  2. .DS_Store
  3. Thumbs.db
  4. # 忽略日志文件
  5. *.log
  6. # 忽略环境变量文件
  7. .env
  8. # 忽略依赖文件夹
  9. node_modules/
  10. dist/
复制代码
三、.gitignore 的语法规则

1. 忽略文件

在 .gitignore 文件中,直接写上文件名即可忽略该文件:
  1. .env
复制代码
2. 忽略文件夹

在文件夹名称后加上 /:
  1. node_modules/
  2. dist/
复制代码
3. 通配符使用



  • *:匹配任意字符。
  • ?:匹配单个字符。
  • [abc]:匹配括号内的任意字符。
示例:
  1. # 忽略所有 `.log` 文件
  2. *.log
  3. # 忽略以 `temp` 开头的文件
  4. temp*
  5. # 忽略 `.txt` 文件,但保留 `important.txt`
  6. *.txt
  7. !important.txt
复制代码
4. 忽略某路径下的文件

指定路径下的文件:
  1. # 忽略 src 目录下的所有 `.tmp` 文件
  2. src/**/*.tmp
复制代码
四、忽略已被跟踪的文件

题目描述

假如某个文件已经被 Git 跟踪(即已被提交到堆栈),即使后来将其添加到 .gitignore 文件中,Git 仍会继承跟踪它。
办理方案


  • 更新 .gitignore 文件
    将必要忽略的文件参加 .gitignore:
    1. .env
    复制代码
  • 停止对文件的跟踪
    使用 git rm --cached 命令停止对该文件的跟踪:
    1. git rm --cached .env
    复制代码

    • --cached 参数只从 Git 的索引中移除文件,不会删除本地文件。

  • 提交更改
    提交更新后的 .gitignore 和移除文件的操纵:
    1. git commit -m "Remove .env
    2. from version control and update .gitignore"
    复制代码
  • 验证忽略效果
    修改被忽略的文件(如 .env

    ),运行 git status 查抄,应该不会显示文件的更改。
五、.gitignore 模板

差别的项目大概必要差别的 .gitignore 配置。可以参考 GitHub 官方的 .gitignore 模板库,选择适合你的项目的模板。
例如,Node.js 项目的 .gitignore:
  1. node_modules/npm-debug.log.env
  2. dist/
复制代码
Python 项目的 .gitignore:
  1. # Byte-compiled / optimized / DLL files
  2. __pycache__/
  3. *.py[cod]
  4. # Environment variables
  5. .env
复制代码
六、总结



  • .gitignore 是管理 Git 项目时的重要工具,能资助我们制止提交不必要的文件。
  • 对于已经跟踪的文件,必要使用 git rm --cached 停止其跟踪,并配合 .gitignore 文件实现忽略。
  • 养成在项目初期就配置 .gitignore 的风俗,可以制止不必要的贫苦。
盼望通过这篇文章,你能够更好地理解和使用 .gitignore 文件!

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

民工心事

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表