Git - 如何配置.gitignore文件?

devtools/2024/11/12 6:51:27/

文章目录

  • 如何配置gitignore>.gitignore文件
    • 1.`gitignore>.gitignore`语法
    • 2.创建`gitignore>.gitignore`文件所遵循的原则
    • 参考

gitignore_1">如何配置gitignore>.gitignore文件

在使用Git的时候,我们总会遇到不想要提交的文件或者文件夹,这时我们便可以通过配置gitignore>.gitignore文件来让Git忽略我们项目中相应的文件或者文件夹。

我们不需要从头开始写gitignore>.gitignore文件,因为GitHub已经为我们准备了各种配置文件(GitHub的gitignore>.gitignore配置文件),我们只需要按照自己的需求更改一下就可以使用了。

注意:gitignore>.gitignore文件的位置应该位于项目的根路径下面!!!(当然可以有多个gitignore>.gitignore文件,效果如下所示)

myproject <- Git仓库根目录
├── .gitigore <- 针对整个仓库生效的gitignore>.gitignore
├── LICENSE
├── README.md
├── docs
│ └── .gitigore <- 仅针对docs目录生效的gitignore>.gitignore
└── source

gitignore_17">1.gitignore>.gitignore语法

以“#”号开头表示注释;/ 以斜杠“/”开头表示目录;* 以星号“*”通配多个字符;? 以问号“?”通配单个字符[] 以方括号“[]”包含单个字符的匹配列表;! 以叹号“!”表示不忽略(跟踪)匹配到的文件或目录;

注意:Git 对于 gitignore>.gitignore 配置文件的处理是按照顺序进行的,即从上到下逐行匹配规则。这意味着如果前面的规则可以匹配到某个文件,后面的规则将不会再被考虑。因此,确保将更具体的规则放在文件的前面可以确保它们被正确地应用

示例

*.txt      # 过滤所有以 .txt 结尾的文件
*.xml      # 过滤所有以 .xml 结尾的文件target/    # 过滤名为 target 的文件夹下的所有文件/test/a.txt    # 过滤指定目录下的具体文件 /test/a.txt!*.py    # 不过滤以 .py 结尾的文件
!/dir/test/    # 不过滤根目录下的 dir/test 目录*.[ab]     # 过滤所有以 .a 或 .b 结尾的文件/test      # 仅忽略根目录下的 test 文件夹,不包括子目录 child/test
test/      # 忽略文件夹 test 下的全部内容,不管是根目录下的/test/,还是某个子目录下的test文件夹,比如:/child/test,都会被忽略

gitignore>.gitignore 文件在线生成工具:Gitignore Online Generator

gitignore_56">2.创建gitignore>.gitignore文件所遵循的原则

当创建 gitignore>.gitignore 文件时,遵循以下几个原则:

  1. 忽略操作系统自动生成的文件,如缩略图等。
# 忽略操作系统自动生成的文件
Thumbs.db
ehthumbs.db
Desktop.ini
  1. 忽略编译生成的中间文件、可执行文件。如果一个文件是通过另一个文件自动生成的,那自动生成的文件就没必要放进版本库。比如Java编译产生的 .class 文件。
# 忽略编译生成的文件
*.class
*.exe
*.dll
*.py[cod]
*.so
*.egg
*.egg-info
dist
build
  1. 忽略带有敏感信息的配置文件,比如存放口令的配置文件。
# 忽略带有敏感信息的配置文件
config.ini
credentials.json
deploy_key_rsa

通过遵循这些原则,可以确保 gitignore>.gitignore 文件仅包含项目中不需要跟踪的文件或目录,从而保持版本库的整洁和安全。

参考

  • 廖雪峰Git教程
  • Gitignore Online Generator
  • GitHub gitignore

😃😃😃


http://www.ppmy.cn/devtools/11025.html

相关文章

Nginx 防盗链

原文&#xff1a;https://blog.iyatt.com/?p14998 基于 Nginx 1.18 服务器默认配置文件路径&#xff1a;/etc/nginx/sites-available/default 屏蔽非指定域名的解析 我这里如果发现请求的地址不是我的 iyatt.com&#xff0c;就会返回 403 比如有人用其它域名指向我的服务器…

数据仓库元数据管理

数据仓库元数据管理是数据仓库中至关重要的一环&#xff0c;它涉及到对数据仓库中的元数据进行收集、存储、组织、查询、维护和安全管理等方面的工作。本文将介绍数据仓库元数据管理的定义、分类、应用、价值、管理方案、具体实施和挑战&#xff0c;以帮助读者更好地理解和应用…

百度GL地图实现选点获取经纬度并且地址逆解析

index.html引入 <script src"https://api.map.baidu.com/api?typewebgl&v1.0&ak你的ak"></script>组件使用 <el-input:disabled"[详情].includes(title)"v-model"formData.site"placeholder""><templat…

工业级扫描式避障型激光雷达选型指南

工业级扫描式激光避障型传感器选型指南 在工业自动化领域&#xff0c;扫描式激光避障型传感器已成为不可或缺的关键组件。其高精度、高可靠性以及快速响应能力&#xff0c;使得机器人在复杂环境中能够安全、高效地执行任务。然而&#xff0c;面对市场上众多的传感器产品&#…

DAY31-贪心算法| 455.分发饼干,376.摆动序列,53. 最大子序和

文章目录 455.分发饼干376.摆动序列53.最大子序和 455.分发饼干 文字讲解&#xff1a;分发饼干 视频讲解&#xff1a;分发饼干 状态&#xff1a;这题ok 思路&#xff1a; 代码&#xff1a; class Solution {public int findContentChildren(int[] g, int[] s) {if (s.length0…

Qt gsl库配置踩坑记录

想求解非线性方程组&#xff0c;之前使用拟牛顿法写过相关的matlab代码&#xff0c;这次想移植到C代码&#xff0c;网上说gsl库挺好用的&#xff0c;于是我也想试一下。相关参考&#xff1a; 【C】GSL(GNU Scientific Library) 的安装及在 Visual Studio 2017 中的使用 QT5使用…

如何用微信小程序实现远程控制无人售货柜

如何用微信小程序实现远程控制无人售货柜呢&#xff1f; 本文描述了使用微信小程序调用HTTP接口&#xff0c;实现控制无人售货柜&#xff0c;独立控制售货柜、格子柜的柜门。 可选用产品&#xff1a;可根据实际场景需求&#xff0c;选择对应的规格 序号设备名称厂商1智能WiFi…

ubuntu系统下opencv的编译安装

ubuntu系统下opencv的编译安装 参考https://blog.csdn.net/KIK9973/article/details/118830187 1 安装准备 1.1安装依赖环境(Ubuntu18.04) 下载opencv的依赖&#xff0c;其中第三行的依赖是可选的&#xff0c;前两行的依赖则是必要的。 sudo apt-get install build-essent…