如何将完整的二进制文件添加到Mercurial补丁中?

时间:2010-04-24 16:48:23

标签: mercurial binary patch mercurial-queue

我想使用Mercurial捕获对我们使用的软件的vanilla安装所做的更改。每次我们升级软件时,我们都需要手动编辑各种配置文件,并添加我们在当前版本软件中使用的第三方库。为配置文件更改创建补丁很好,但如何将第三方库(二进制文件)添加到Mercurial补丁?它甚至可能吗?

3 个答案:

答案 0 :(得分:6)

如果你试图获得第7版的补丁......

hg export --git -r 7 -o 7.patch

答案 1 :(得分:3)

是的,mq扩展可以处理二进制数据以及文本数据。它将使用Git's extended patch format来保存二进制数据。当您使用修改的二进制文件刷新补丁时,这是透明处理的。

这是否是一个好主意是另一个问题 - 当他写道这不是版本控制系统的正常用例时,VonC是正确的。

答案 2 :(得分:1)

即使有可能,也不建议! (适用于Mercurial或任何其他VCS)
版本控制系统不用于记录二进制文件(主要是因为它快速增长不成比例,占用大量磁盘空间,并且没有有效的方式存储在delta中)

您应该为标记的每个版本记录配置需求 这可以是文本文件,也可以是 maven pom 。任何允许外部机制(如maven)下载并在本地存储正确依赖关系的东西。

这意味着您的补丁将包含对该文本文件(例如pom)的更改,以及其余的代码修改。

相关问题