Git 2.13 正式发布,可检测 SHA-1 冲突

文 | 宋秉金

最近,开源项目 Git 正式发布了 Git 2.13.0 版本,包括了来自 65 位贡献者开发的特性和 Bug 修复。其中特别值得一提的一处 Bug 修复与 git shell 命令有关。2.13 版本之前,对于自己部署 Git 服务器的用户来说,可能会存在不受信任的 Git 用户在远程主机上执行 shell 命令的风险。

下面我们来介绍一下几个新增特性:

SHA-1 冲突检测

前段时间有新闻报道说,研究人员找到了第一例 SHA-1 冲突,而 SHA-1 正是 Git 用来识别对象的哈希函数。Git 2.13 版本会对对象进行检测,并拒绝可能存在冲突攻击的对象。新版本中,该检测已默认生效,用户不用再安装其他依赖。不过,这个实现的速度相对慢一些,但是实际上对于大多数 Git 操作的时间不会产生可见影响。

更方便的 pathspec

以前,你可能会这样使用 Git:

$ git log foo.c
$ git grep my_pattern program.rb

其实,foo.cprogram.rb 这种参数实际上被称为 pathspec,是 Git 独有的匹配路径的模式。Pathspec 可以是路径字面量、前缀或者通配符:

$ git log Documentation/      # Everything under the Documentation/ directory
$ git log '*.c'               # C files anywhere in the tree

新版本中,添加了 attr 标记,支持根据文件的 git 属性值进行选择。例如,如果你使用了 GIt LFS,可以这样获取文件列表:

$ git ls-files
.gitattributes
README
video.mp4

$ git ls-files ':(attr:filter=lfs)'
video.mp4

更多新特性,请查看RelNotes/2.13.0.txt

原创声明,本文系作者授权云+社区-专栏发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

编辑于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏企鹅号快讯

基于 Swoole 的微信扫码登录

随着微信的普及,扫码登录方式越来越被现在的应用所使用。它因为不用去记住密码,只要有微信号即可方便快捷登录。微信的开放平台原生就有支持扫码登录的功能,不过大部分人...

2289
来自专栏知识分享

1-关于"小五物联"的功能介绍(使用介绍)

1844
来自专栏编程坑太多

『中级篇』Docker Compose的安装和基本使用(39)

PS: docker-compose的概念有直观的理解,包括compose的命令行和使用。 建议使用docker-compose up -d 后台来运行,如果不...

552
来自专栏编程坑太多

『中级篇』Docker Compose的安装和基本使用(39)

PS: docker-compose的概念有直观的理解,包括compose的命令行和使用。

895
来自专栏Youngxj

emlog添加人体艺术时钟组件

1184
来自专栏主机笔记

Win32DiskImager写入后U盘容量变小解决

最近一直想在笔记本上安装个linux系统玩玩,今天本来想试试用win32diskimager来制作一下启动盘,结果制作完成后原本16G的u盘的容量只有不到3G,...

2815
来自专栏Ceph对象存储方案

RGW奇淫技巧-玩转system特权

开启system特权 root@demohost:/home/user# radosgw-admin user modify --system=1 --uid=...

1955
来自专栏Youngxj

linux更新内核版本

1873
来自专栏散尽浮华

分布式监控系统Zabbix--完整安装记录 -添加web页面监控

通过zabbix做web监控,不仅仅可以监控到站点的响应时间,还可以根据站点返回的状态码或响应时间做报警设置,比如说对某个url进行监控,当访问返回的状态码是非...

1839
来自专栏禹都一只猫博客

Docker进阶:Dockerfile以及docker-compose工具

本文作者为olei,转载请注明。

751

扫码关注云+社区