Subversion中二进制文件的替代

richq:

我的一些同事相信,将构建工件提交到Subversion存储库是一个好主意。争论在于通过这种方式,在测试机器上的安装和更新很容易-只需“向上”!

我敢肯定,有人反对这种不良做法,但我能想到的只是la脚的,例如“占用更多空间”。不这样做的最好的杀手级原因是什么?而我们应该采取哪些其他方法呢?

如果这有所不同,则用于Java代码。一切都是从Eclipse编译的(没有自动PDE构建)。

当我说添加构建工件时,我的意思是提交将如下所示:

"Added the new Whizbang feature"

 M src/foo/bar/Foo.java
 M bin/Foo.jar

每个代码更改都有相应的生成的jar文件。

Homes2001:

在我看来,代码存储库应仅包含源代码以及编译该源代码所需的第三方库(在构建过程中也可以使用某些依赖项管理工具来检索第三方库)。生成的二进制文件不应与源代码一起检入。

我认为您遇到的问题是您没有适当的构建脚本。这就是为什么从源代码构建二进制文件会涉及诸如启动eclipse,导入项目,调整类路径等工作的原因。

如果有构建脚本,则可以使用以下命令来获取二进制文件:

svn update; ant dist

我认为不随源检入二进制文件的最重要原因是存储库的大小。这将导致:

  • 版本库系统服务器上的存储库更大,空间可能太少
  • 版本控制系统服务器和客户端之间的流量很大
  • 更新时间更长(想象您从互联网上进行了SVN更新...)

另一个原因可能是:

  • 源代码很容易比较,因此版本控制系统的许多功能确实有意义。但是您无法轻松比较二进制文件...

我认为您如上所述的方法也会带来很多开销。如果开发人员忘记更新相应的jar文件怎么办?

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章