首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >subversion比较包括新文件

subversion比较包括新文件
EN

Stack Overflow用户
提问于 2008-10-01 21:30:04
回答 4查看 18.7K关注 0票数 20

我对一个开源项目进行了一些本地更改,该项目使用Subversion作为其源代码控制。(我对原始项目存储库没有提交访问权限。)

我的更改添加了一个文件,但是这个文件没有包含在"svn diff“的输出中。(可能值得注意的是,新文件是二进制文件,而不是纯文本。)

如何制作包含新文件的patch

 $ svn st
   A      tests/foo.zip
 $ svn diff
 $
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2008-10-01 22:20:28

您的文件是二进制的,这就是它不能显示的原因。Subversion的diff命令只执行文本差异/补丁(尽管Subversion内部可以有效地处理版本之间的二进制文件差异)。

票数 6
EN

Stack Overflow用户

发布于 2010-02-13 07:46:36

我经历过类似于Pozsar的行为。他的回答对我来说比普通的svn diff -force更有效。但是,如果在DOS机器上运行(例如通过Cygwin),您可能需要稍微修改他的答案。下面的diff +补丁使用--binary arg在Cygwin中修补我的文本+二进制文件:

svn diff --force --diff-cmd /usr/bin/diff -x "-au --binary" OLD-URL NEW-URL > mybinarydiff.diff

patch -p0 --binary -i mybinarydiff.diff
票数 28
EN

Stack Overflow用户

发布于 2009-06-26 21:42:42

diff命令有一个--force选项,但它为我的机器上的二进制文件生成了不正确的补丁文件。不过,将它与--diff-cmd选项一起使用对我来说是有效的:

svn diff --force --diff-cmd /usr/bin/diff -x -au

我认为这就是您想要的结果。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/159853

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档