Git - 忽略不需要提交的文件及文件夹

在Git的版本控制中,有些文件或文件夹是不需要被Git控制的,如 .idea/ 或 target/ 之类的文件夹或本地配置类的文件是不需要被Git提交到代码库的,为了避免提交这类型的文件需要为Git配置忽略规则。

Git的忽略规则可以通过.gitignore文件来实现,将需要被忽略的文件或文件夹写入即可。

两种写入方式:

(1)使用命令行

echo "*.properties" >.gitignore _过滤扩展名为properties的文件
echo "target/" >.gitignore _过滤target目录下的所有文件
>> 是在文件末尾追加
> 是删除已经存在的内容再追加

命令执行后会在当前目录下生成一个.gitignore的文件。

(2)使用文本编辑器,如:

### IntelliJ IDEA ###
.idea
*.iws
*.iml
*.ipr

修改即可,一行控制一个文件类型或文件夹。

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

.gitignore文件在不同的目录结构下有不同的作用域,如在单一工程根目录下对该工程过滤,在Git文件目录 .git/info/exclude 下对该工程目录结构过滤,在Git默认Home目录 C:\Users\用户\ 下全局配置过滤。

Tip:.gitignore只能忽略那些原来没有被track的文件,如果某些文件已经被纳入了版本管理中,则修改.gitignore是无效的。那么解决方法就是先把本地缓存删除(改变成未track状态),然后再提交:

git rm -r --cached .
git add .
git commit -m 'update .gitignore'
### 如何使用 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 = your_email@example.com [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、付费专栏及课程。

余额充值