社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

Git 2.40 发布,包括 git jump 工具的更新、cat-file 工具的增强以及提高 Windows 上响应速度

InfoQ • 2 年前 • 221 次点击  

作者 | Aditya Kulkarni
译者 | 张卫滨
策划 | 丁晓昀

最近,开源 Git 项目发布了最新的 2.40 版本,带来了一些新的特性和缺陷修复。这个版本值得关注的特性包括git jump工具的更新、cat-file工具的增强以及在 Windows 上更快的响应。

GitHub 的软件工程师 Taylor Blau 详细介绍了 Git 2.40 的更新细节。git jump是 contrib 目录中的一个可选工具,现在支持 Emacs 和 Vim。git jump工具对 Git 命令进行了封装,比如git grep,并将它们的结果输入的 Vim 的 quickfix 列表中。

如果你使用 Emacs 的话,git jump可以通过M-x grepgit jump --stdout grep foo命令来生成一个位置列表。该命令将会输出项目中所有与“foo”匹配的内容,使其更容易进行导航。Git jump 也适用于diffmerge

Git 的cat-file工具常用于打印 Git 仓库中任意对象的内容。从 Git 2.38.0 版本开始,cat-file工具支持在打印提交的内容时,使用 Git 的 mailmap 规则。为了确定某个特定对象的大小,cat-file工具可以使用--batch-check-s选项。但是,以前版本的 Git 在使用cat-file工具时,如果在使用--use-mailmap选项的同时,组合使用了--batch-check-s选项,将会导致结果不正确。在 Git 2.40 中,这个问题得到了修正,现在--batch-check-s选项会正确报告对象的大小。

git check-attr命令能够用来确定给定的路径设置了哪些gitattributes。这些属性是由仓库中的一个或多个.gitattributes文件所定义和设置的。对于复杂的规则或多个.gitattributes文件,请按照如下形式使用check-attr git 命令:

$ git check-attr -a git.c git.c: diff: cpp git.c: whitespace: indent,trail,space

在此之前,check-attr需要有一个索引,这使得它在裸仓库中很难使用。裸仓库是一个以.git为后缀的目录,它没有任何版本控制文件的本地检出副本(在裸仓库中,所有通常存在于隐藏的“.git”子目录中的 Git 管理和控制文件都直接存在于“repository.git”目录中,而没有其他文件存在并被检出。——译者注)。在 Git 2.40 和更新的版本中,现在支持使用--source=选项来扫描.gitattributes,使其更易于在裸仓库中使用。

GitHub 的推特账号发布了这些更新,这引起了推特上技术社区的关注。其中,有位推特用户 Andrew 转推了该公告,并这样引用到:“git jump 似乎相当有用!https://github.com/git/git/tree/v2.19.0/contrib/git-jump。”

Git 2.40 还包括一些功能增强,将 Git 旧的组成部分从 Perl 或 Shell 改写成现代 C 语言的等价方式。这使得 Git 命令在 Windows 等平台上运行得更快。现在,git bisect已经以原生内置程序的方式以 C 语言进行了实现,而传统实现git add --interactive已经废弃了。

在 2.40 版本中,Git 的 CI 基础设施也有一些改进。一些长期运行的 Windows 专有 CI 构建已被禁用,为 Git 开发人员带来了更快、更节省资源的 CI 运行方案。

原文链接:

Open Source Git Project Releases Version 2.40(https://www.infoq.com/news/2023/04/git-releases-version-2-40/)

相关阅读:

20 个 Git 命令玩转版本控制 (https://xie.infoq.cn/article/999f8a62e67979b75776a22e6)

软件开发入门教程网之 Git 基本操作 (https://xie.infoq.cn/article/d5e76833564f3fd1f4c1577a7)

软件测试丨让工作更高效,搞定 Git 的分支管理 (https://xie.infoq.cn/article/5b2d6b8e8f5234a856d3e056e)

声明:本文为 InfoQ 翻译,未经许可禁止转载。

点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!

今日好文推荐

谷歌或被抛弃!ChatGPT 引爆手机市场新一轮洗牌:Android 手机销冠三星30亿美元大单欲改投 Bing

中国开源项目贡献者已超过10万!《中国开源生态图谱 2023》发布

Databricks来搅局了:0门槛克隆ChatGPT,完全开源可随意修改商用

GPT-5根本不存在!OpenAI 表态;王小川讽刺李彦宏活在平行宇宙,百度肖阳回击;阿里、亚马逊等相继发布大模型产品|Q资讯

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/153878
 
221 次点击