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

【嵌入式开发 Linux 常用命令系列 4.2 -- git .gitignore 使用详细介绍】

文章目录

  • .gitignore 使用详细介绍
      • .gitignore 文件的位置
      • .gitignore 语法规则
      • 使用示例
      • 注意事项

.gitignore 使用详细介绍

.gitignore 文件是一个特殊的文本文件,它告诉 Git 哪些文件或目录是可以被忽略的,即不应该被纳入版本控制系统。这主要用于避免一些临时文件、构建输出、系统文件等被提交到仓库中,以保持仓库的干净和管理的简洁性。

.gitignore 文件的位置

.gitignore 文件通常位于 Git 仓库的根目录,但是也可以在仓库中的任何子目录中放置 .gitignore 文件以应用于特定的子目录。Git 会递归地查找并应用所有的 .gitignore 文件。

.gitignore 语法规则

  • 空白行:被忽略,可以用作分隔符以提高可读性。
  • # 开头的行:被视为注释,会被 Git 忽略。
  • 标准的 glob 模式:用于匹配文件名,可以使用通配符。
  • 以斜杠 / 开始:防止递归。
  • 以斜杠 / 结尾:指定目录。
  • 以感叹号 ! 开始:表示例外规则,不忽略此模式匹配的文件。

使用示例

下面是一个典型的 .gitignore 文件示例,展示了如何忽略特定文件和目录:

# 忽略所有 .log 文件 
*.log # 忽略临时文件夹,但不忽略 temp 文件夹下的 .txt 文件 
temp/* !temp/*.txt # 忽略所有 .pdf 文件,但不忽略 doc 文件夹中的 .pdf 文件 
*.pdf !doc/*.pdf # 忽略特定的文件 
config.env # 忽略 build 目录 
build/ # 忽略 doc/notes.txt,但不忽略 doc/server/arch/notes.txt 
doc/notes.txt # 忽略 doc 目录下所有 .txt 文件(不递归) 
doc/*.txt # 忽略所有在任意位置的 TODO 文件 
TODO # 忽略一个目录中所有的子目录和文件(递归) 
node_modules/ 

注意事项

  • 一旦一个文件已经被纳入版本控制系统,.gitignore 对该文件就不再起作用。如果你想忽略已经被跟踪(tracked)的文件,首先需要使用命令 git rm --cached <file> 将该文件从索引中移除。
  • .gitignore 只能阻止未跟踪的文件被添加到版本控制中,如果其他人的仓库中没有相应的 .gitignore 文件或规则,他们可能会将被忽略的文件添加到仓库中。
  • .gitignore 文件应该被添加到仓库中(使用 git add .gitignore),这样其他协作者也能应用相同的忽略规则。

通过合理设置 .gitignore 文件,你可以确保仅将必要的源代码和资源文件纳入版本控制,而不是项目生成的所有文件,这对于保持项目的整洁和减小仓库的大小非常重要。

http://www.lryc.cn/news/271952.html

相关文章:

  • 【熔断限流组件resilience4j和hystrix】
  • 微服务雪崩问题及解决方案
  • 008、所有权
  • 千里马2023年终总结-android framework实战
  • vue3中pinia的使用及持久化(详细解释)
  • 安装 yarn、pnpm、功能比较
  • 计算机专业个人简历范文(8篇)
  • 几个实用网站
  • Pycharm 切换interpreter---python的环境和第三方库问题
  • TP-LINK 路由器忘记密码 - 恢复出厂设置
  • 关闭 Elasticsearch 集群的安全性设置
  • [技术分享]一招解决 MySQL 中 DDL 被阻塞的问题
  • Windows搭建Emby媒体库服务器,无公网IP远程访问本地影音文件
  • 自动化测试系列 之 Python单元测试框架unittest
  • C语言朴素算法
  • 【力扣题解】P501-二叉搜索树中的众数-Java题解
  • Wnmp本地部署结合内网穿透实现任意浏览器远程访问本地服务
  • 深信服AF防火墙配置SSL VPN
  • 在Spring Cloud中使用Gateway 网关
  • 【Python】配置环境变量
  • 使用.Net nanoFramework 驱动ESP32的OLED显示屏
  • 0基础学习VR全景平台篇第134篇:720VR全景,云台调整节点
  • 扫地机器人地图与用户终端的同步
  • 使用机器学习进行语法错误检测/纠正
  • 从0到1快速入门ETLCloud
  • QT上位机开发(会员管理软件)
  • 线性代数笔记3 1.1
  • 2023年12月编程语言排行榜
  • Redis VS Memcached:选择哪个更适合您的应用?
  • 【HarmonyOS开发】共享包HAR和HSP的创建和使用以及三方库的发布