git使用学习四、git add忽略指定文件夹与文件

前言

本篇记录一下使用.gitignore指定git忽略某些文件夹与文件。

.gitignore

如果.git根目录下有数据集、大模型等不适于添加到git项目中的文件夹和文件,可以在.git根目录下添加.gitignore文件,在该文件中添加希望忽略的文件和目录名。

例如根目录下有dataset/,weights/large_weight.ckpt,train.py,utils/,我们希望把train.pyutils/添加到本地仓库,则可以创建一个.gitignore文件,内容为:

# .gitignore
dataset/
weights/large_weight.ckpt

然后在终端输入指令:

git status

可以看到,此时只剩红色的train.py, utils/等文件的状态被git捕获,而.gitignore中的文件和目录不会显式状态。

然后就可以更新仓库了:

git add.
git commit -m 'update .gitignore'

注意:如果在添加.gitignor

### 如何使用 Git 忽略特定文件夹Git忽略特定文件夹可以通过多种方式实现,具体取决于需求场景和个人偏好。以下是常见的三种方法及其适用范围: #### 方法一:通过 `.gitignore` 文件忽略指定文件夹 `.gitignore` 是最常用的忽略机制之一,用于定义哪些文件或目录应被 Git 跟踪。要忽略某个文件夹,只需将其路径写入项目的根目录下的 `.gitignore` 文件中。 例如,假设需要忽略名为 `logs` 的文件夹,在 `.gitignore` 文件中添加如下内容: ``` /logs/ ``` 需要注意的是,此方法仅对尚未被跟踪的文件有效[^1]。如果该文件夹已被追踪,则需先移除其缓存状态再重新提交更改。操作命令如下: ```bash git rm -r --cached logs/ git add . git commit -m "Ignore the logs directory" ``` #### 方法二:利用 `.git/info/exclude` 局部忽略文件夹 对于想推送到远程仓库但仍希望局部忽略的情况,可编辑位于项目中的隐藏目录 `.git/info/exclude` 文件来完成设置。这种方式类似于 `.gitignore`,但它会随代码库一起分享给其他开发者[^2]。 同样以上述例子为例,打开并编辑 `.git/info/exclude` 文件,加入以下行即可达到目的: ``` /logs/ ``` 这种方法适合处理个人开发环境特有的临时数据存储位置等情形。 #### 方法三:全局配置忽略规则 (针对所有仓库) 当存在一些通用类型的文件或者整个类别都需要屏蔽时,可以考虑设立全局性的忽略列表。这通常涉及修改用户的 global git 配置文件——即 `.gitconfig` ——并通过其中指向另一个专门用来列举例外项的文档来进行管理[^3]。 比如创建一个叫做 `git.ignore` 的新文本档,并在里面写下想排除掉的内容像这样: ``` # Ignore all log directories globally. /logs/ ``` 接着更新你的 `.gitconfig` 添加下面几行: ```ini [user] name = Your Name Here email = [email protected] [core] excludesfile = /path/to/global/git.ignore ``` 这里 `/path/to/global/git.ignore` 应替换为你实际保存那个额外 ignore list 的绝对地址。 --- ### 总结 综上所述,有三种主要途径可以帮助你在同层次上去达成目标:“让 Git 对某特定文件夹视而见”。每种都有各自特点及最佳应用场景,请依据实际情况选取最适合自己的解决方案!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值