微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

.gitignore .gitattributes 声明的所有二进制文件

如何解决.gitignore .gitattributes 声明的所有二进制文件

如果 .gitignore 让你定义一个基本上说 ignore all files considered as binary files 的模式会怎样?我的意思是不添加每个模式,因为行太多,而是类似于 binary,类似于 .gitattributes 让您定义的内容

基本上我想要:

  • 认忽略所有文件,这些文件被认为是 binary 由 git 自动检测并由 .gitattributes 指定
  • 只允许特定的二进制文件,像往常一样通过 .gitignore 显式允许它们

我还没有发现任何迹象表明这种情况是可能的。有人知道更多吗?

解决方法

这是不可能的。

gitignore documentation

中所述

gitignore 文件中的每一行指定一个模式。在决定是否忽略某个路径时,Git 通常会检查来自多个来源的 gitignore 模式,按照以下优先级顺序,从高到低(在一个优先级内,最后匹配的模式决定结果)

因此不可能按种类

忽略文件

对此的解决方法可能是定义一个预提交脚本,该脚本检查提交中是否存在二进制文件并以非零代码退出,以便在二进制文件存在时您将无法提交提交。

您可以使用此命令检查提交中存在的每个文件,并查看它是否是二进制文件

file --mime <commit-file> | grep binary

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。