速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

Git 2.17 改进了移动代码差异比较和对象搜索

  • 2018-04-22
  • 本文字数:1016 字

    阅读完需:约 3 分钟

看新闻很累?看技术新闻更累?试试下载 InfoQ 手机客户端,每天上下班路上听新闻,有趣还有料!

Git 的最新版本 2.17 版给出了多个改进,以及一些小的新特性,包括更好的移动代码配色、在历史中查找对象等。

Git 2.17 通过设定移动代码行的配色组,改进了 diff 命令的显示。通常情况下,Git 在显示上并不区分移动代码行与其它的代码更改。现在,用户可以使用–color-moved 选项,以不同的配色分别显示移动了但是并未更改的代码行,以及发生了移动也做了更改的代码行。移动代码行所用的配色,可使用 diff.colorMoved选项指定。--color-moved选项支持下列配置:

  • no:不高亮显示移动代码行。
  • zebra:Git 会检测包含至少 20 个字符(字母和数字)的代码块,并选择显示配色。一旦检测到了新的代码块,就更改为另一种颜色显示。前后两个代码块的配色分别使用color.diff.{old,new}Movedcolor.diff.{old,new}MovedAlternative选项指定。
  • dimmed_zebra:与zebra配置类似。区别之处在于,它对移动代码中不感兴趣的部分变暗显示。
  • plain: 使用color.diff.newMoved所指定的配色,在新位置显示在某处移除并添加到新位置的的代码行;使用color.diff.oldMoved指定的配色,在原位置显示移除并添加到其它位置的代码行。

在 Git 2.17 版中,对 log 和 diff 命令添加了新的选项--find-object。该选项可将搜索结果仅局限于指向给定对象哈希串的提交。Git 对象可能会出现在多个提交中。例如,一个对象是在一次提交中首次创建的,之后可能会在另一次提交中删除。对象在重命名或拷贝时,会对应于多条路径,因此这样的对象不易被追踪。现在,使用下面的命令可以选取并显示指向给定对象的所有提交:

复制代码
git log --find-object=<hash-here> -p
</hash-here>

在 Git 2.17 版中,rebase(变基)命令和 am(应用递送补丁)命令都支持新选项--show-current-patch,显示使用命令给出的差异。在 rebase 或 merge 命令因发生冲突而停止时,该选项给出的输出十分有用。此外,merge 命令使用的“默认不采用 Fast Forward 模式”策略也稍作了修改。新版本在合并一个标签(tag)时,会应用 Fast Forward 模式,除非标签对象并非位于默认的“/refs/tags”目录中。对于下游(downstream)贡献者从上游(upstream)更新打标签版本上的主题分支(Topic Branch),这一改进可阻止提交无必要的合并。

Git 2.17 中还包括了很多改进,本文无法一一列举。推荐查看官方发行说明

查看英文原文: Git 2.17 Improves Moved Code Diffs and Object Search

2018-04-22 19:001607
用户头像

发布了 391 篇内容, 共 136.5 次阅读, 收获喜欢 256 次。

关注

评论

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

TDengine 上榜 BenchCouncil 全球首个开源贡献榜

TDengine

tdengine 时序数据库

一种可以实现安全便捷文件摆渡的跨网文件安全交换软件

镭速

跨网文件交换 跨网文件 内外网文件交换

mac电脑串口调试工具serial 最新激活直装版

胖墩儿不胖y

Mac软件 串口调试工具 好用的电脑软件

After Effects 2022 mac(ae 2022视频特效编辑软件) v22.6.0永久激活版

mac

苹果mac Windows软件 视频特效编辑软件 After Effects 2022 AE2022

《可信计算技术最佳实践白皮书》发布,龙蜥助力可信计算技术应用推广(可下载)

OpenAnolis小助手

最佳实践 白皮书 云栖大会 龙蜥社区 可信计算

万界星空科技低代码平台+协同制造MES产品

万界星空科技

低代码开发平台 低代码平台 mes 云mes 万界星空科技

从零开始构建性能测试技术体系

老张

性能测试 技术体系

APP新生态:超级app+轻应用

Geek_2305a8

开源组态软件有哪些?国产常用Web组态软件

2D3D前端可视化开发

大数据 物联网 可视化 组态软件 数字孪生

企业沟通为什么选择用私有化部署的im即时通讯软件?

WorkPlus

关于LED广告屏的市场情况

Dylan

互联网 媒体 广告 应用 LED显示屏

混沌工程:是谁背着我偷偷写 Bug 🤸

Greptime 格睿科技

数据库 时序数据库 混沌工程 时序 Greptime

远程运维用什么软件?可以保障更安全?

行云管家

运维 IT运维 远程运维 运维协同

软件测试/测试开发丨PyCharm安装指南与技巧分享

测试人

软件测试

OmniPlan Pro 4 for Mac(项目流程管理工具) 4.6激活版

mac

项目管理软件 苹果mac Windows软件 OmniPlan Pro

大语言模型比武

天黑黑

AI 亚马逊云科技 ChatGPT LLM

七个很实用的开源项目「GitHub 热点速览」

EquatorCoco

开源 源码 分享 教程

Mac端好用的原型设计工具Axure RP 9 最新中文版

mac大玩家j

Mac软件 设计软件 原型设计工具 交互原型设计

数据库管理工具:Navicat Premium 15 中文激活版 支持M1

彩云

Navicat Premium 15 数据库库管理

一文带你读懂什么是云主机

Finovy Cloud

云渲染

Hundred Finance 攻击事件分析

EquatorCoco

编程 互联网 黑客 教程

软件测试/测试开发丨Python安装指南(macOS)

测试人

软件测试

光纤的连接方法有哪些?

小魏写代码

SQL审计是什么意思?目的是什么?有什么好处?

行云管家

运维审计 录像审计 SQL审计

大文件传输小知识 | UDP和TCP哪个传输速度快?

镭速

TCP 传输大文件 UDP传输

包装印刷行业云MES解决方案

万界星空科技

MES系统 mes 云mes 印刷行业 万界星空科技

应用架构的演进 | 拒绝牺牲性能为代价的安全

亚马逊云科技 (Amazon Web Services)

微服务 云原生 API Amazon API Gateway Amazon AppSync

醉三皇酒业与玛特宇宙达成战略合作,发布醉三皇数字代言人【玉皇璟玺】

联营汇聚

函数计算 FC 3.0 发布,全面降价,最高幅度达93%,阶梯计费越用越便宜

Serverless Devs

云计算 阿里云 Serverless AIGC

实例讲解数据库的数据去重

华为云开发者联盟

数据库 后端 华为云 华为云GaussDB 华为云开发者联盟

Git 2.17改进了移动代码差异比较和对象搜索_Git_Sergio De Simone_InfoQ精选文章