设为首页收藏本站

LUPA开源社区

 找回密码
 注册
文章 帖子 博客
LUPA开源社区 首页 业界资讯 开源资讯 查看内容

Git 2.9:改进子模块,提升diff文件可读性

2016-6-21 22:35| 发布者: joejoe0332| 查看: 875| 评论: 0|原作者: CSDN|来自: CSDN

摘要: 开源Git分布式版本控制系统,也是代码分享网站Github的基石,发布了一个新的升级版本。新版本中子模块的速度更快、对diff程序和测试功能进行了改进。 ...

最新版本的开源版本控制系统加入了新的diff启发式算法,让diff结果更清晰。

开源Git分布式版本控制系统,也是代码分享网站Github的基石,发布了一个新的升级版本。新版本中子模块的速度更快、对diff程序和测试功能进行了改进。

Git 2.9版本于本周发布,丰富了子模块选项。用户可以在一个仓库的子目录下维护另一个Git仓库,子模块的改进专注于速度和灵活性的提升。

“在最近一次发布中,我们介绍了如何使用--jobs=<N>选项并行获取子模块,这样了大大节省时间”,GitHub基础设施工程经理Jeff King说道,“现在,你还可以在克隆或更新子模块时使用--jobs选项”。用户可以设置submodule.fetchJobs配置项,这样每次处理子模块都可以并行执行”。

Git 2.9版本中diff引擎加入了一个新的启发式算法,diff结果变得更清晰。“diff的主要目的是展示变化、增加及删除的内容”,King解释说,“但是,由于Git只能看到文件‘之前’与‘之后’的状态,有时候diff给出的结果让人感到费解”。升级后的启发式算法能够精确的描述用户的更改。“新的启发式算法还处于试验阶段,未来可能会修改或者作为默认选项”,King说道,“目前,我们可以在命令行加入--compaction-heuristic选项或者在git配置文件中设置diff.compactionHeuristic进行启用。除此之外,对diff文件已经默认开启了重命名检测。

Git 2.9版本通过交互式rebase功能使得测试所有分支变得更加简单。“交互式rebase的核心是一组操作:选择一个提交,在它上面进行‘挤压’,然后编辑消息等等”,King解释道。

(译者注:这里的“挤压(squash)是指把分支里的每个提交取消掉,并且把它们临时保存为补丁,然后把分支更新为最新的目标分支,最后把保存的这些补丁应用到当前分支上。)

rebase操作是在新分支上对一系列提交的回放。King说道:“除了其他功能,rebase最重要的一点是可以很好地组织你的工作,让代码审查者可以看到一个干净的、有逻辑的提交序列”。

King还强调了Git项目对Github的重要性。“GitHub在两方面依赖于Git。其一,它是大多数用户用来创建和管理托管仓库的客户端软件。其二,我们的服务端基础设置使用Git作为与仓库数据交互的核心工具”。

原文:Git 2.9 improves submodules, diff readability 
作者: Paul Krill 
译者:赖信涛


酷毙

雷人

鲜花

鸡蛋

漂亮
  • 快毕业了,没工作经验,
    找份工作好难啊?
    赶紧去人才芯片公司磨练吧!!

最新评论

关于LUPA|人才芯片工程|人才招聘|LUPA认证|LUPA教育|LUPA开源社区 ( 浙B2-20090187 浙公网安备 33010602006705号   

返回顶部