2010-03-29 79 views
1

环境:SVN,Netbeans,Hudson如何提交一个非颠覆的文件到存储库?

SVN项目A:构建一个库文件(foo.jar)。构建文件在/ dist下,svn忽略它,源代码在svn控制下。

SVN项目B:保存所有库文件。 (其他SVN项目通过外部svn从这里获得所有库)

问题:我想将foo.jar从A提交到B.怎么做? foo.jar不能被添加或提交,因为它不在SVN控制之下。

感谢您的任何提示! (这个问题是独立于IDE和CI服务器的)

+0

如果您将文件托管在远程服务器上,以便很多人都可以访问存储库,那么我认为您所做的并不是真正有意义的。项目A正在创建一个特定的代码库foo.jar,是否正确?而项目B将所有这些库汇集在一起​​,foo.jar,bar.jar,foobar.jar等。为什么不想要版本控制?为什么不从项目A访问,如果你想要foo.jar? – thecoshman 2010-03-29 07:13:37

+1

我怀疑这是因为项目B具有来自许多不同项目(包括项目A)的输出文件。许多团队可能需要获取这些工件,但对生成它们的源没有用处。对于这样的情况,拥有所有这些库的中央存储库可能是有意义的。 – pkaeding 2010-03-29 07:15:36

+0

我们有许多使用自定义库的Web项目。我需要确保所有使用相同的库,所以我把它们通过svn外部。 (我不希望每个人都有权利访问他的资源)。 – javadude 2010-03-29 07:19:22

回答

1

有可能是一个更聪明的方法来做到这一点,但如果您在构建过程中的最后一步是将输出文件(foo.jar)从projA/dist复制到projB/lib,然后签入projB ?

这将假定两个工作副本在用于执行构建的机器上的特定位置检出,从学术角度允许项目在任何地方检出可能不是理想的,并且没有相互依赖关系,但它应该满足您的需求,完成工作并转移到下一个问题!

0

为什么你不改变你的构建,它会自动将你的jar复制到项目B,当你提交项目B时它会自动提交你的jar?这是一个可接受的方法吗?

0

当我们需要做这样的事情时,我们通常会在构建结束时自动将文件从A复制到B.如果一切正常,您可以更改构建过程以自动提交它(尽管这并不总是一个好主意)。

相关问题