Git 2.19 对Diff、Branch和Grep等做了改进
\Git的最新版带来了丰富的新功能以及内部更新,包括改进的diff、branch和grep,更好的命令行补全,新的range-diff命令等。\\Git diff现在可以正确地标记以intent-to-add参数添加的新文件路径。intent-to-add可以和git add命令一起使用,完整写法即git add --intent-to-add\u0026lt;文件名\u0026gt;,以给工作树添加一个空文件。这很有用,这样git diff可以在其输出中展示新文件的完整内容。但是之前,diff中的文件路径没有被标记成新的。在一份相关说明提到,apply命令也改进了其对intent-to-add选项的处理。事实上,现在在应用补丁时,给索引添加新路径只影响到用intent-to-add添加了所有新文件的工作树。回过来看diff,color-moved选项已经扩展为支持新的color-moved-ws变体,它专门制作git diff移动的彩色行,而其他未改变则显示空白。Git 2.18中类似的功能是利用color-moved和ignore-space-change来实现的,尽管后一个选项将被应用于整个输出,而不只是移动的行。\\Git grep有了两个新选项:列(column),它给输出添加第一个匹配的列号;以及唯一匹配的(only-matching),它限制输出为正则表达式的匹配部分,而不是整个匹配行。\\
Git 2.19用两种方式改进了git branch列表。首先,git branch –list现在从branch.sort配置变量读取其默认排序选项,与git tag –list从tag.sort中获取其默认排序选项类似。此外,git branch的-l选项(它是-create-reflog的简写)已经被弃用,以防止开发人员无意中把它当做-list的别名使用。
\\\自2.6版本开始,Git提供git fsck命令以检查被推送到存储库的对象的完整性。这项测试可以在接收端执行,并用receive.fsck.*变量进行配置。例如,如果因为zero-padded文件模式定义receive.fsck.zeroPaddedFilemode变量导致fsck失败的话,您可以让Git拒绝推送。Git 2.19利用fetch.fsck.*变量,为git fetch提供相似的功能。\\在实现方面,git子模块foreach用C进行了重写,性能因此得到了改进。此外,对命令行补全的支持也得到了改进,现在会列出子命令所用的配置变量列表和包括带-no-前缀的选项。git fetch命令支持新的-negotiation-tip选项以减少返回的提交集。当本地存储库具有在远程历史记录中不存在的大量引用时,这能提高带宽和性能。\\在开发方面,Git 2.19已经禁用strcat,这被认为太危险了,现在会引起编译失败。\\
还有很多Git 2.19中的新功能我们没有在这里进行介绍。如果您有兴趣了解全部的细节,请别错过官方发布说明。
\\
查看英文原文:Git 2.19 Improves Diff, Branch, and Grep, and More
\\
感谢冬雨对本文的审校。
Git 2.19 对Diff、Branch和Grep等做了改进相关推荐
- Git导出差分(diff)包--before/after/patch
*完全由本人原创,转载请注明出处哦~ http://blog.csdn.net/adrianjian/article/details/44085181* 差分包是什么? 即修正前后的差异.包含修正前. ...
- git apply、git am打补丁.diff 和 .patch
前提: 生成patch: git format-patch -M master 生成指定patch,0163bed3bf59ae74c36cc5138b4c24f1556d8304是commit id ...
- 关于git中,两个branch自动同步的问题和解决
关于git中,两个branch自动同步的问题和解决 1问题描述 2问题原因 3解决方法 1问题描述 在git中,如果在一个branch中对代码进行了修改,切不做任何操作直接checkout另一个bra ...
- git push 出现 The current branch dev has no upstream branch.的问题
git push 出现 The current branch dev has no upstream branch.的问题 原因:本地分支没有和远程分支关联,导致无法push 解决方法:git pus ...
- grep命令做永久别名 显示颜色
grep命令做永久别名 显示颜色 http://jingyan.baidu.com/article/22fe7ced17c1543002617f9c.html http://blog.csdn.ne ...
- diff git 指定时间_Git diff 代码比较的高级技巧
Git diff 代码比较的高级技巧 Git是使用branch来管理不同的功能点开发的,那么我们怎样能比较不同branch的不同呢? 使用 git diff branch1 branch2 , 就可 ...
- diff git 代码实现_Git diff 算法
在Git中,有四种diff算法,即Myers,Minimal,Patience和Histogram.默认Myers.Minimal是Myers的改进,Histogram是Patience的改进.Mye ...
- git 移动分支指针_理解git 中的HEAD指针branch指针
HEAD指针 使用git checkout 来移动HEAD指针,移动的对象可以是分支指针也可以是快照. HEAD指针可以指向快照也可以指向branch.当指向branch时提交后会和branch指针一 ...
- [git] 基础操作-01-diff / diff head 版本比较 - 非常的详细讨论版本比较中的各种符号的意思,以及如何在git中进行版本比较
前言: 本文讨论,各个处理逻辑中版本的表述.比较中,git的操作的细节和表述符合的具体意义:(非常细节,会的朋友可以跳过) 对于 遇到的各个命令,会给出详细的解释在附录里面: 理解git文档的四个状态 ...
最新文章
- nodejs实现继承的简单代码示例
- power linux 安装系统,powershell 安装服务器
- oracle数据库中substring的使用方法
- Android之Launcher分析和修改5——HotSeat分析
- Spark常见问题解决办法
- MogDB数据库如何完美适配Grafana及Prometheus?
- TokenInsight:BTC多头比例延续上升,人气保持高位
- date对象加十分钟_js面向对象-这样学很轻松
- x264源代码简单分析:熵编码(Entropy Encoding)部分
- Activiti6记录
- 点亮LED灯——arduino 学习第一天
- Windows 7安装loopback接口
- Code Project精彩系列
- UI交互设计学习心得《一》
- vue对高德地图的简单使用:点击标记并获取经纬度和详细地址
- [概率练习]n个小球放入m个盒子
- 精仿苹果x开机android,800元高仿iPhone X以假乱真!更可怕的是奸商套路
- 1143 联络员(kruskal算法)
- vs2015 Windows10 Qt5.9.3(包含qtwebengine、qtwebview编译)源码编译(jom编译)心得总结
- cache 强缓存与弱缓存区别
热门文章
- Python type 函数- Python零基础入门教程
- 企业开发需要的git提交和拉取代码(本地仓库和github演示)
- php正则表达式 匹配数字,正则表达式之匹配数字范围
- java 正则表达式 table_Java 使用正则表达式
- java desktop mailto,mailto在Java?
- android显示矩阵大小,关于android:显示代表灰度图像的双值矩阵
- python3 for sum_Python for循环和“sum13”方法
- python 数组维度_python – 非常基本的Numpy数组维度可视化
- jdbc获取mysql第二行表信息_【奇技淫巧】MySQL另类方法获取元数据信息
- yang模型中rpc_领域驱动模型(DDD)设计讲解