Mercurial 最近发布了3.8 版本。这次发布给 cHg 带来了一个最新的 Mercurial 指令服务器客户端,旨在提高对 Mercurial API 访问的能力并规避了潜在的许可证问题。另外,Mercurial 3.8 版本对许多指令、拓展以及各种性能进行了提升。
如上所述,Mercurial cHg 是一款新的命令行客户端,可以传送指令到 Mercurial 指令服务器中,在 1.9 版本中引入这个服务器,它为 Mercurial 与客户端程序之间的交互提供了一个更好的模型。Mercurial 指令服务器需要解决的最主要问题是有关于许可证的:由于 Mercurial 基于 GPL 许可证,任何连接它 API 的客户必须在 GPL 许可证下发布,客户端有时并不能满足这一需求。另外,客户端可以通过 hg,其指令行客户端访问 Mercurial,由于每次访问都需要使用 hg,所以这将是一笔很大的开销。因为指令服务器的存在,现在可以通过管道编写与 Mercurial 交互的客户端或者类库,今后将不再属于 GPL 许可的范畴。目前,cHg 提供了一个现成的 hg 替代方案,可以加速通过 hg 访问 Mercurial 的客户端,而不需要额外的费用。
另外一些 Mercurial 3.8 中值得关注的变更包括:
hg update
,以及其他执行更新操作的指令,例如hg pull -
,提出关于其他的拓扑头的警告。根据这个,现在hg update
仅更新在同一拓扑分支上的变更,而不更新其他拓扑分支。hg resolve
现在恢复一个中断指令时(例如hg rebase
或hg histedit
)将给出更好的提示。- 新的试验阶段的拓展
automv
以自动检测文件备份及重命名。 - Windows 平台的
hg rebase
,hg log -f <file>
,hg update
现在更快了。
最后提出, Mercurial 3.8 同时修复了一个低优先级的安全漏洞,当使用“恶意名称”转换Git 库时可执行任意代码。
在3.8 版本发布不久后,3.8.1 版本也很快发布了,修复了一个发布监管问题。
Mercurial 3.8.1 的二进制和源格式现在可以下载。
查看英文原文: Mercurial 3.8 Released with New Fast Client for Mercurial Command Server
感谢夏雪对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们。
评论