漳州市网站建设_网站建设公司_测试上线_seo优化
2025/12/28 12:06:33 网站建设 项目流程

基本概念

  • 作用——.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

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询