git 不跟踪某些文件的几种方式

**

git 忽略文件比较

**

.gitignore: 只能完全忽略文件, 不把 文件 包含到 git 历史 管理中

通常用于忽略对其他人没有用的临时目录

已经被提交的文件, 无法使用 .gitignore 忽略变更

**

git update-index --assume-unchanged

**

可以忽略被提交的文件以后的更改

但是仍然保留文件 未来的更改, 文件还会 存在于 git 管理历史中

git 不再 跟踪 文件变化

只能 取消 对 某个文件的 跟踪

git update-index --assume-unchanged

所以需要 配合 find 一起使用

复制代码
# 不再跟踪 某个目录
find .env -type f -exec  git update-index --assume-unchanged {} \;

# git ls-files:列出 Git 仓库中的所有文件。
# -v:详细模式,显示每个文件的类型和模式。
# grep 'h':过滤输出,只显示那些被标记为 assume-unchanged 的文件(h 表示该文件被标记为 "skipped")。
# 查询 不再 被 跟踪 的文件
git ls-files -v | grep '^h '

# 取消 "不再跟踪 规则"
find .env -type f -exec git update-index --no-assume-unchanged {} \;
相关推荐
ModestCoder_3 小时前
Git 忽略所有 `.xlsx`,但保留指定 Excel 文件的方法
git·excel
阡陌..4 小时前
202605新版git_2.54.0常用操作指令
大数据·git·elasticsearch
会笑的小熊5 小时前
VScode项目推送到git仓库
ide·git·vscode
zhangfeng11335 小时前
宝塔服务器完全可以安装 Git,进行版本管理,而且非常简单
运维·服务器·人工智能·git·编程
Bdygsl7 小时前
Git(1)—— 基本理解与使用
git
JiaWen技术圈8 小时前
增量静态再生(ISR)详解:Next.js 中的实现与应用
javascript·git·ubuntu
The Chosen One9859 小时前
【Linux】深入理解Linux进程(二):进程的状态
linux·运维·服务器·开发语言·git
TimberWill9 小时前
git worktree实现分支管理
git
普修罗双战士10 小时前
项目设计-文章系统发布文章完整前后端设计
java·数据库·vue.js·spring boot·git·intellij-idea
bzmK1DTbd20 小时前
Git版本控制:Java项目中的分支管理与合并策略
java·开发语言·git