当前位置: 首页 > news >正文

Git | 配置忽略文件操作

基本概念

  • 作用——.gitignore文件用于指定Git版本库应忽略的文件/目录,避免提交临时文件、敏感信息或自动生成文件

  • 文件位置

    • 通常放在Git仓库根目录,对整个项目生效
    • 子目录可放置额外的.gitignore,仅作用于该目录及子目录(优先级高于根目录)
    MyProject<- Git仓库根目录 ├── .gitigore<- 针对整个仓库生效 ├── LICENSE ├── README.md ├── src │ ├── .gitigore<- 仅针对src目录生效 │ └── untils.py └── docs
  • 规则编写

    • 每行写一个忽略规则
    • 逐行匹配,从上到下应用规则
    • 后定义的例外规则(!)可覆盖前面的排除规则
  • 规则语法

    语法示例说明
    **.log匹配任意字符(不含路径分隔符)
    ****/tmp匹配任意层级目录(如a/tmpa/b/tmp
    ??.txt匹配单个字符
    [abc][abc].txt匹配列表中的字符
    /前缀/build仅匹配根目录下的文件
    /后缀dir/仅匹配目录(不匹配同名文件)
    !!important.txt排除例外(需在忽略规则后定义)

项目忽略规则

场景一:配置项目忽略规则
  1. 项目根目录创建.gitignore文件

    touch.gitignore
  2. 编辑忽略规则

    # 忽略所有 .log 文件*.log# 忽略特定目录build/ dist/ node_modules/# 忽略系统文件(Mac/Windows).DS_Store Thumbs.db# 例外:不忽略重要文件!src/config.cfg
  3. 应用忽略规则

    • 如果文件未被Git跟踪,规则自动生效

    • 如果文件已被Git跟踪(如提交过),需清除缓存

      # 移除所有文件的缓存(保留本地文件)gitrm-r --cached.
      # 重新添加文件(应用 .gitignore 规则)gitadd.
      # 提交变更gitcommit -m"Update .gitignore"
场景二:某文件已被追踪,要求修改规则忽略该文件
  1. 删除Git缓存中该文件(保留本地文件)

    gitrm--cached App.class
  2. 修改忽略规则

    # 应用内忽略配置App.class
场景三:大量修改规则,要求清除全部追踪文件,重新应用规则
  1. 删除Git缓存中所有文件(保留本地文件)

    gitrm-r --cached.
  2. 修改忽略规则

    # 忽略 logs/ 和 temp/ 目录logs/ temp/
  3. 重新添加所有文件(此时.gitignore规则生效)

    gitadd.
场景四:某文件已被忽略,要求强制跟踪该文件
  1. 添加文件(告知文件已被忽略)

    $gitaddApp.class The following paths are ignored by one of your .gitignore files: App.class Use -fifyou really want toaddthem.
  2. 强制添加被忽略文件

    gitadd-f App.class
场景五:修改忽略规则,要求排除例外文件
  1. 忽略规则:排除.开头的隐藏文件和.class文件

    # 排除所有.开头的隐藏文件:.*# 排除所有.class文件:*.class
  2. 例外文件:不忽略文件.gitignoreApp.class

    # 不排除.gitignore和App.class:!.gitignore!App.class
场景六:查找忽略规则
  1. 查找与App.class相关的忽略规则

    $gitcheck-ignore -v App.class .gitignore:3:*.class App.class# 第3行规则忽略 App.class 文件,以便知道如何修订规则

全局忽略规则

  • 全局生效:指定统一的.gitignore文件,应用到当前用户的所有Git项目中(无需在每个项目重复配置)

  • 忽略文件:适合忽略与项目无关但个人环境通用的文件,如:

    • 系统自动生成文件(如Mac.DS_StoreWindowsThumbs.db

    • 编辑器临时文件(如VS Code.vscode/JetBrains.idea/

    • 日志或缓存(如*.lognpm-debug.log

场景一:配置全局忽略规则
  1. 任意目录下(通常在用户主目录)创建全局.gitignore文件

    touch~/.gitignore_global
  2. 编辑全局忽略规则

    # 系统文件.DS_Store Thumbs.db Desktop.ini# IDE/编辑器.idea/ .vscode/ *.swp# 日志/缓存*.log *.tmp

    可从 GitHub/gitignore 复制通用规则,或使用 gitignore.io 生成

  3. 识别全局忽略规则

    $gitconfig --global core.excludesfile ~/.gitignore_global
  4. 验证配置是否生效

    $gitconfig --global core.excludesfile /Users/username/.gitignore_global

http://www.jsqmd.com/news/153636/

相关文章:

  • 2025年建筑工地覆膜板建筑模板/建筑模板行业内知名厂家排行榜 - 品牌宣传支持者
  • YOLO结合DeepSORT实现多目标跟踪实战案例
  • 2025咸阳全屋定制品牌工艺质量排行榜,家具/坡屋顶/酒柜/沙发/颗粒板/木饰面/钢筋工/现代简约/床垫/自建房全屋定制企业口碑排行榜单 - 品牌推荐师
  • dpwsock.dll文件损坏丢失找不到 打不开程序软件问题 下载方法
  • YOLO模型镜像支持飞腾+麒麟国产软硬件栈
  • Git | 变基操作
  • dpwsockx.dll损坏丢失找不到 打不开软件问题 免费下载方法
  • 2025年热门的化学空气过滤器行业内知名厂家排行榜 - 品牌宣传支持者
  • 基于STM32设计的老人监控系统设计(程序代码+实物+原理图+PCB+论文)
  • YOLO模型蒸馏实战:用小模型逼近大模型精度
  • YOLO模型版权说明与商业使用合规指南
  • 2025知名的美国展会搭建企业TOP5权威推荐:甄选口碑服务商助力出海品牌国际亮相 - mypinpai
  • YOLO在AR/VR环境理解中的潜在价值分析
  • 为什么YOLO成为全球工业视觉部署最广泛的模型?
  • YOLO推理服务支持主动心跳检测与自愈机制
  • 2025年知名的高端全品类五金/批发全品类五金厂家最新TOP排行榜 - 品牌宣传支持者
  • 零售场景下的YOLO应用:货架商品识别与盘点
  • 安防监控新利器:基于YOLO的智能视频分析方案
  • 工业质检升级:YOLO助力智能制造转型
  • 【Java毕设全套源码+文档】基于springboot的旅游门票信息系统设计与实现_(丰富项目+远程调试+讲解+定制)
  • 51单片机8路抢答器开发全记录:C程序、Proteus仿真与实现细节
  • 2025年河北净化板厂家排行榜,全生彩钢口碑出众 - myqiye
  • YOLO for Beginners:零基础入门目标检测技术
  • 【Java毕设全套源码+文档】基于springboot的医疗废物管理系统设计与实现(丰富项目+远程调试+讲解+定制)
  • 2025年口碑好的西安JDZ10-10型电压互感器/JSZV16-10R型电压互感器厂家最新推荐权威榜 - 品牌宣传支持者
  • 齐鲁文化名人起名大师颜廷利在现代地位高吗?他的哲学到底有多厉害?
  • 2025年质量好的南京高压空压机厂家最新TOP排行榜 - 品牌宣传支持者
  • 【Java毕设全套源码+文档】基于springboot的篮球馆会员信息管理系统设计与实现(丰富项目+远程调试+讲解+定制)
  • 2025河北净化板厂家TOP5权威推荐:全生净化板价格贵不贵? - 工业推荐榜
  • 2025年广东佛山冲孔网源头工厂推荐:冲孔网制造厂哪家专业? - 工业品牌热点