【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

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:001471
用户头像

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

关注

评论

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

新四化时代来袭,亚马逊云科技赋能汽车行业加速创新

Lily

SQL 开始日期、结束日期查询

孙永潮

今天拿SpringAOP和自定义注解的通用性开🔪

知识浅谈

切面编程 7月月更

你真的了解Redis的持久化机制吗?

C++后台开发

数据库 redis 后端开发 C/C++后台开发 C/C++开发

Jenkins 如何玩转接口自动化测试?

Liam

测试 jenkins 自动化测试 API 测试框架

容器化 | 在 Rancher 中部署 MySQL 集群

RadonDB

MySQL 开源 容器化 rancher RadonDB

兆骑科创海外高层次人才引进平台,企业项目对接,赛事活动路演

兆骑科创凤阁

不会多线程还想进BAT?精选19道多线程面试题,有答案边看边学

程序知音

Java 多线程 面试题 后端技术 BAT面试题

手摸手实现Canal如何接入MySQL实现数据写操作监听

知识浅谈

MySQ 7月月更

金九银十喜提offer!秋招蚂蚁金服Java研发岗四面

程序员啊叶

Java 编程 程序员 架构 java面试

基于Flink CDC打通数据实时入湖

数据社

签约计划第三季

官宣,又一上市公司杀入数据库市场

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

上海移动基于亚信科技AntDB完成核心账务数据库的国产化替换

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

【堡垒机小知识】硬件堡垒机是什么意思?其与云堡垒机有什么区别?

行云管家

云计算 网络安全 数据安全 堡垒机 云堡垒机

Google Cloud X Kyligence|如何从业务视角管理数据湖?

Kyligence

数据湖 智能多维数据库

即时通讯-改变社交与工作状态的新型软件

WorkPlus

数据中台建设(四):企业构建数据中台评估

Lansonli

大数据 数据中台 7月月更

深圳见!云原生加速应用构建专场:来看云原生 FinOps、SRE、高性能计算场景最佳实践

阿里巴巴云原生

阿里云 云原生 峰会

Rust P2P网络应用实战-1 P2P网络核心概念及Ping程序

李明

rust 网络 Libp2p

面试?进大厂?还得靠这份Java面试指导手册

王小凡

Java 面试 JVM Java多线程 秋招

兆骑科创赛事活动承办,项目路演,人才引进平台

兆骑科创凤阁

APP为什么用JSON协议与服务端交互:序列化相关知识

程序员啊叶

Java 编程 程序员 架构 java面试

【7.22-7.29】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

突破性能天花板!亚信数据库支撑 10 多亿用户,峰值每秒百万交易

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

文档贡献与写作必读-OpenHarmony开发者文档风格指南

OpenHarmony开发者

Open Harmony

StarRocks 2.3 新版本特性介绍

StarRocks

数字孪生万物可视 |联接现实世界与数字空间

华为云开发者联盟

云计算 大数据 后端 智慧城市 数字孪生

关于数字化转型 你需要知道的八项指导原则

WorkPlus

从通信延伸到全行业,亚信科技AntDB 7.0蓄势待发

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

大模型轻量化实践路径

澜舟孟子开源社区

人工智能 自然语言处理 神经网络 深度学习 预训练模型

一文读懂Elephant Swap,为何为ePLATO带来如此高的溢价?

西柚子

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