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  

\\

感谢冬雨对本文的审校。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/537847.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

su oracle c expdp,expdp/impdp 数据泵导入导出

useridtest/test --导出的用户,本地用户!!directorydmpfile --导出的逻辑目录,一定要在oracle中创建完成的,并且给用户授权读写权限dumpfilexx.dmp --导出的数据文件的名称,如果想在指定的位置的话可以写…

Centos 升级GLIBCXX3.4.25

32位系统: http://ftp.de.debian.org/debian/pool/main/g/gcc-4.7/libstdc6_4.7.2-5_i386.deb 64位系统: wget http://ftp.de.debian.org/debian/pool/main/g/gcc-8/libstdc6_8.2.0-7_amd64.deb 其他版本 http://ftp.de.debian.org/debian/pool/main/g/ 解压 ar -x libst…

美团点评基于MGR的CMDB高可用架构搭建之路【转】

王志朋 美团点评DBA 曾在京东金融担任DBA,目前就职于美团点评,主要负责金融业务线数据库及基础组件数据库的运维。 MySQL Group Replication(以下简称MGR),于5.7.17版本正式GA,由Oracle官方出品&#xff0c…

使用 redmind 进行项目任务管理

一、项目经理 1.1、新建任务(工单) 1.2、查看任务状态 二、团队成员 2.1、查看任务 作为这个团队的成员之一,每天开工第一件事便是进入redmine查看“我的工作台”中自己的任务 2.2、每日反馈任务完成状态 1、每天开始工作时,及时将任务状态从“新…

oracle11g创建表空间大文件,oracle11g创建表空间 sql语法

--oracle 11g创建有限制大小的永久表空间--create tablespace test--datafile F:\app\shan\product\11.2.0\dbhome_1\oradata\test.dbf size 1M--autoextend on next 2M maxsize 1024M;--修改表空间大小:--alter database datafile F:\app\shan\product\11.2.0\dbho…

内存泄漏优化

目录介绍: 1.什么是内存泄漏2.内存泄漏造成什么影响3.内存泄漏检测的工具有哪些4.关于Leakcanary使用介绍5.Leakcanary捕捉常见的内存泄漏及解决办法 5.0.1 错误使用单例造成的内存泄漏5.0.2 错误使用静态变量,导致引用后无法销毁5.0.3 [常见]Handler使用…

redmine更换主题

主题列表:http://www.redmine.org/projects/redmine/wiki/Theme_List 虽然有很多主题,但是很多主题都是要钱的,像这类(上图)没有下载地址的,都是要钱的。 含GitHub的下载地址的,是免费可下载的&…

redmine 邮箱配置(阿里云+windows)

说明 密码是第三方的授权码,不是邮箱密码 需要登录126网页版,在设置里开启 smtp 等第三方服务,设置授权码 阿里云Linux 默认屏蔽25号端口,所以需要开启ssl,和使用 465 端口 重启下 redmind sh /opt/redmine-3.4.6-…

linux查看当前用户终端,Linux----基本命令的使用(vi命令,查看文件内容,显示进程,切换用户等)...

1、vi是linux系统上经常使用的一个文本编辑器,其有三种模式:命令模式、编辑模式(插入模式)、末行模式。命令模式——>编辑模式:“i a o I A O”linux编辑模式——>命令模式:“ESC”shell命令模式——>末行模式&#xff1…

centos6.8 环境一键安装包 nginx配置thinkphp5

---恢复内容开始--- lnmp1.4 一键安装包 nginx配置thinkphp5 环境:Nginx1.12.1 PHP5.6 Coentos6.8 修改网站配置文件 server{listen 443 ssl http2;#listen [::]:443 ssl http2;server_name xxx.cn;index index.html index.htm index.php default.html default.ht…

Linux下BitNami Redmine的插件安装与更新

截至2017年3月27日,Redmine-3.3.2-2安装以下的15款插件全部成功并通过测试(下面显示为插件正确文件夹名): easy_wbs redmine_ckeditor 提供所见即所得编辑器 redmine_graphs 提供部分问题图表功能 progressive_projects_list 是…

linux 进程 读写锁,linux 下实现高性能读写锁(read/write lock)

前一篇文章分析了Windows slim read/write lock的工作原理。我们知道它的设计相当精妙,于是我们可以借鉴它的思路来设计linux下的读写锁。在这个读写锁的设计上,需要注意的是linux和windows有以下几点区别:(1)windows使用的keyedevent机制需要…

Linux下redmine安装插件报错

报错如下: There was an error parsing Gemfile: compile error - syntax error, unexpected :, expecting $end gem tzinfo-data, platforms: [:mingw, :x64_mingw, :mswin, :jruby]^. Bundler cannot continue. 原因是: redmine不同版本对ruby版本有…

ajax post 提交无法进入controller 请求200

最近写js遇到个问题: 用ajax的post方式给后台提交数据,页面200,但是不进入controller 断点,我以为我post参数不对。 网上查的: 1.说路径不对,但是我通过get方式是可以进入的,路径是没问题的&…

cuda 编译 linux,Linux下安装Tensorflow源码及编译

下载Tensorflow源码git clone https://github.com/tensorflow/tensorflow如果无法下载也可以在github上直接下载tensorflow的打包文件,这样也能编译,但是不能使用git命令可根据需要切换到不同的分支安装bazel输入以下命令echo "deb [archamd64] htt…

testflight进行用户的beta测试

发发发转载于:https://www.cnblogs.com/caimaomao/p/9681483.html

linux限制ping的时间,如何限制Linux命令程序运行的时间

Linux提供了大量的命令,每个命令都是唯一的,并且在特定的情况下使用。Linux的目标是帮助您尽可能地高效工作。Linux命令的一个属性是时间限制。您可以为任何您想要的命令设置时间限制。如果时间过期,命令停止执行。在本教程中,您将…

微软网络工具psping介绍

该工具功能主要包括:ICMP Ping、TCP Ping、延迟测试、带宽测试,而且它是微软出品的下载地址:https://download.sysinternals.com/files/PSTools.ziphttp://technet.microsoft.com/en-us/sysinternals/jj729731解压后把psping.exe丢到C:\Windo…

mac svn

https://formac.informer.com/tortoisesvn

linux服务器虚拟内存设置,修改Linux服务器虚拟内存Swap大小

Linux的Swap相当于Windows的虚拟内存,当物理内存不够的时候,就需要将物理内存中的一部分空间释放出来,以供当前运行的程序使用。那些被释放出来的空间可能来自一些很长时间没有什么操作的程序,这些被释放的空间临时保存到Swap空间…