发布在即!企业 AIGC 应用程度测评,3 步定制专属评估报告。抢首批测评权益>>> 了解详情
写点什么

Git 2.20 的重大更新:侧重可用性和性能

  • 2019-01-09
  • 本文字数:1039 字

    阅读完需:约 3 分钟

Git 2.20的重大更新:侧重可用性和性能

Git 2.20 带来了大量变更和修复,包括改进的克隆(cloning)、抓取( fetching)、查询(grepping)等。此外,Git 的 Windows 端支持的最小版本已经设定为 Vista。

正文

Git 2.20 带来了大量变更和修复,包括改进的克隆(cloning)、抓取( fetching)、查询(grepping)等。此外,Git 的 Windows 端支持的 Windows 的最小版本现在已经设定为 Vista。


Git 2.20 侧重于可用性、性能的改进和 bug 的修复。例如,当克隆文件名仅仅大小写有差异的库到大小写不敏感的系统时,Git 现在可以更好地处理。在这种情况下,Git 将发出警告,以防止文件丢失。另一个改进了的命令是 git fetch,它以前不支持标记的不可变性,并悄悄地更新了所有现有标记。现在,除非给出–force 选项,否则它将失败。


现在为提交图文件的生成提供进度指示,从而改进使用大型存储库的用户体验,因为在大型存储库中,生成提交图可能需要很长的时间。与之类似,当刷新存储库索引需要很长时间时,现在 git status 命令将显示一个进度条。


git grep 命令现在可以使–no-recursive 标志以非递归的方式执行,它只是–max-depth 0 的别名。


交互式 rebase 是 Git 中最常用的命令之一,现在可以在任务列表中处理新的中断操作了,实现方法是在用户遇到中断时将控制权返还给用户。如果您希望在继续 rebase 操作之前手动修改某个提交时,在某个提交处进行中断可能是很有用的。


Git 2.20 还使配置更加灵活。在 2.19 版本之前(包括 2.19 版本),Git 支持三种配置文件:系统(例如/etc/gitconfig、Git config --system…)、全局或每个用户(例如~/.gitconfig、git config --global …)和每个存储库(例如./.git/config, git config --local …),这对于共享相同存储库的工作树来说是不够的,因为它不支持具有不同配置的工作树。现在您可以使用–worktree 标记和 git config 命令读取或写入一个.git/config.worktree 文件。


在性能方面,git submodule update 以及 git rebase 和 git rebase -i 都已经用 C 重写了,因此为了获得更好的性能,移植到 C 的命令数量也越来越多了,包括 git pull、git am、git rebase 等等。


Git 2.20 还修复了许多错误,包括在编辑期间提供空提交消息时中止 rebase 操作;删除在 git status 时由于未清理重用变量而导致的断言失败;等等。


最后,Git 现在支持的最低 Windows 平台版本为至少 Windows Vista 以上。


在此,还有很多 Git 2.20 内容没有介绍,所以请不要错过官方发布说明。


查看英文原文:Git 2.20 Brings Improved Workflows and Performance


2019-01-09 10:0012655

评论

发布
暂无评论
发现更多内容

Pandas+Numpy+Sklearn随机取数

Peter

Python pandas

甲辰篇 創世紀《「內元宇宙」聯載》

因田木

元宇宙 貴人網 電子書

GDB调试程序的核心技术-ptrace系统调用与使用示例

简说Linux内核

内存管理 Linux内核 进程管理 嵌入式开发 设备驱动

Robot OS系统架构设计

轻口味

android 架构 Robot 4月月更

Pandas索引的操作

Peter

Python pandas

读《Software Engineering at Google》(11)

术子米德

架构师成长笔记

[Day22]-[链表]相交链表

方勇(gopher)

链表 LeetCode 算法和数据结构

采用百度飞桨EasyDL完成指定目标识别

DS小龙哥

4月月更

世界读书日:我想推荐这几本书

宇宙之一粟

书籍推荐 书单 4月月更

Linux内核应该怎么学习?给大家推荐五本书籍

简说Linux内核

Linux Linux内核 驱动开发 嵌入式开发

未来可期,PlatoFarm的生态通证登录Bitmart等全球四大平台

BlockChain先知

读《Software Engineering at Google》(14)

术子米德

架构师成长笔记

初探 Lambda Powertools TypeScript

亚马逊云科技 (Amazon Web Services)

typescript Serverless Lambda AWS

redis优化系列(二)Redis主从原理、主从常用配置

乌龟哥哥

4月月更

解锁OpenHarmony技术日!年度盛会,即将揭幕!

OpenHarmony

大会 OpenHarmony

C++内存池的简单原理及实现(纯代码解析)

简说Linux内核

Linux Linux服务器开发 Linux内核 嵌入式开发

“亿”点点技术情怀

不脱发的程序猿

程序员 程序人生 技术情怀

在docker上编译openjdk8

程序员欣宸

Java JVM 4月月更

机器学习算法:关联规则分析

Peter

Python 机器学习 算法

读《Software Engineering at Google》(13)

术子米德

架构师成长笔记

LabVIEW控制电脑关机、休眠、注销和重启

不脱发的程序猿

LabVIEW LabVIEW控制电脑

解决方案架构师的小锦囊 - 架构图的 5 种类型

亚马逊云科技 (Amazon Web Services)

技术 职业 亚马逊云科技

k8s client-go源码分析 informer源码分析(1)-概要分析

良凯尔

Kubernetes 容器 云原生 Client-go

将新增和编辑的数据同步更新到列表

岛上码农

flutter ios开发 安卓开发 4月月更 跨平台开发

Flutter 一文搞定图片选择和图片上传

岛上码农

flutter ios开发 安卓开发 4月月更 跨平台开发

读《Software Engineering at Google》(12)

术子米德

架构师成长笔记

一个快速追踪密切接触者的开源脚本方案

冯骐

Python 数据分析 流调 密接 新冠疫情

LabVIEW实现应用程序停止或退出

不脱发的程序猿

LabVIEW

我是如何用 Amazon Serverless 创建一个门铃的

亚马逊云科技 (Amazon Web Services)

Serverless Lambda AWS showdev

[Day23]-[数据结构]手写LRU

方勇(gopher)

LeetCode LRU 数据结构算法

Plato Farm-以柏拉图为目标的农场元宇宙游戏

西柚子

Git 2.20的重大更新:侧重可用性和性能_语言 & 开发_Sergio De Simone_InfoQ精选文章