【ArchSummit架构师峰会】探讨数据与人工智能相互驱动的关系>>> 了解详情
写点什么

Git 2.5 增加了工作树、改进了三角工作流、性能等诸多方面

  • 2015-08-15
  • 本文字数:1078 字

    阅读完需:约 4 分钟

Git2.5 是一个重要的功能版本,其中包括了worktrees、改进过的triangular workflows、更好的性能,以及无数的改进和修复。

工作树(Worktrees)

工作树是一个新的实验性功能,使开发者可以在同一Git 仓库中,创建额外的工作树(working trees)。这一功能旨在让开发者易于在两个分支上同时工作。在老的Git 版本中,为此只能切换分支,因为同一时间只能使用一个分支;或者创建一份本地的副本,但为了保持它们的一致性,通常需要额外的工作。

Git 提供了 worktree 命令,用于创建一个新的工作树:

$ git worktree add -b hotfix ../hotfix origin/master这将在指定的路径下(比如…/hotfix),创建一个新的目录,从 origin/master 产生一个新的分支,并将代码迁出到这个新目录中。

在某些场景中,使用第二个工作树会非常有用。比如, 运行当前版本的一个长时间的测试,同时工作在下一个版本的分支上;或者处理一个紧急修复而无需切换出当前分支。

工作树会与主干仓库链接起来,并且彼此互相感知。所以,不允许将同一分支迁出到两个不同的工作树中,以避免两个工作树无法同步。

三角工作流(Triangular workflows)

三角工作流通常用于协调团队的代码贡献者之间的工作。其基本思想是,贡献者拥有他们自己的 fork,当准备好共享时,他们要创建一个 pull 请求,该请求最终会被合并到主干仓库。

为了使三角工作流易于处理,Git2.5 增加了新的符号 @{push},表示当前分支要推送到远程跟踪分支,所处的当前值。这将被用于,比如,列出自上次推送以来,当前分支已经增加的全部提交:

$ git log @{push}或者,可以这样:

$ git log <a href="mailto:whizbang@%7Bpush">whizbang@{push</a>}使用任意分支。

性能

Git2.5 改进了大工作树和网络文件系统的性能:

  • git update-index --untracked-cache 将启用一个实验性功能,使 Git 只检查目录的修改时间,以提高git status的性能。
  • git index-pack 会减少对 packed-refs 目录的扫描次数,以提高网络文件系统的性能。
  • 使用网络文件系统,重用现有包对象,可以减少对utime的频繁调用。

除了以上介绍的功能,Git2.5 还改进了对 Perforce 仓库的支持,包括使用 git p4 检测文件类型、更好地处理分支,以及更多的改进和修复,可以在发版说明中了解这些。

查看英文原文: Git 2.5 Adds Worktrees, Improves Triangular Workflows, Performance, and More


感谢张龙对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015-08-15 18:393573

评论

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

虾皮Shopee商品详情API:电商实时数据获取的关键

Noah

TDengine 签约中船九院,助力航运业智能化转型升级

TDengine

tdengine 时序数据库 国产时序数据库

更快内存、更大缓存,第五代英特尔至强可扩展处理器为多元工作负载提供出色性能

E科讯

腾讯捐赠编译器基础软件,为中国开发者“添了双筷子”

腾讯云大数据

大数据

文心大模型助力企业级NLP模型快速定制

百度开发者中心

人工智能 nlp 文心大模型

软件测试/测试开发/人工智能丨机器学习特征,离散特征和连续特征

测试人

人工智能 软件测试

Rons Data Gear2023特别版下载(表格数据处理程序)

影影绰绰一往直前

Shopee解析商品详情SKU方法丨ShopeeAPI接口封装指南

tbapi

Shopee 虾皮商品详情接口 shopee商品数据接口 shopee商品详情数据接口 shopee API

NFTScan | 12.11~12.17 NFT 市场热点汇总

NFT Research

NFT NFT\ NFTScan nft工具

社招邀请|阿里云热招岗位简历投递中!

阿里云视频云

云计算

基于Stable Diffusion的智能绘画大模型

百度开发者中心

人工智能 大模型

统一门户开发框架—小程序技术

Geek_2305a8

Adobe Lightroom Classic 2024直装激活版(LrC2024)

影影绰绰一往直前

用友出席操作系统大会,携手麒麟软件深度服务企业数智化

用友BIP

展位火爆!TDengine 受邀参加EDT2023中国能源化工数字科技峰会

TDengine

tdengine 时序数据库

Curve 文件系统为 AI 业务降本增效

OpenCurve

云计算 大数据 AI 分布式 文件存储

Amazon CodeWhisperer 在 vscode 的应用

亚马逊云科技 (Amazon Web Services)

人工智能 云上探索实验室 Amazon CodeWhisperer

变革自然语言处理的新型大模型架构

百度开发者中心

nlp 大模型

MySQL运维6-Mycat垂直分库

快乐非自愿限量之名

本周六下午【 TiDB 社区交流活动 上海站】 数据库运维有话聊,谈谈你了解的灾备实践,参会即可获得社区周边 3 件套

TiDB 社区干货传送门

#数据库

集成开发环境(IDE)的用途?

小魏写代码

软件测试/测试开发/人工智能丨GraphWalker自动化测试用例生成

测试人

人工智能 软件测试

【.NET】控制台应用程序的各种交互玩法

EquatorCoco

.net 控制台 项目开发 开发设计

外贸各个大洲客户的特点

九凌网络

未来LED全彩显示屏的发展趋势研究

Dylan

屏幕亮度 LED LED显示屏 户外LED显示屏

制造业进项税额转出全场景数智化管理

用友BIP

突破!金淑杰成功研发中空纤维纳滤膜技术,助力全民健康饮水!

科技热闻

Google SEO服务的常见坑人套路

九凌网络

你的JoinHint为什么不生效

华为云开发者联盟

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

5个免费、跨平台的SQLite数据库可视化工具

不在线第一只蜗牛

sqlite sql 开源 数据可视化

4种Python中基于字段的不使用元类的ORM实现方法

华为云开发者联盟

Python 开发 华为云 华为云开发者联盟

Git 2.5增加了工作树、改进了三角工作流、性能等诸多方面_DevOps & 平台工程_Sergio De Simone_InfoQ精选文章