发布具有第三方依赖关系的开源项目的最佳实践

时间:2013-04-08 21:50:11

标签: open-source

我即将将项目发布到codeplex。我的问题是我的项目所依赖的2个第三方库的最佳方法是什么。一个是System.Data.Sqlite,另一个是Dapper。我是否应该将我构建的特定二进制文件放入存储库中,这样可以让用户获取代码并运行而不会获得其他依赖项,或者它们是否应该在文档中作为需求提及?

1 个答案:

答案 0 :(得分:1)

我不知道CodePlex社区通常如何处理这个问题。我可以说一般。

通常,您不会在开源代码存储库中发布二进制文件。 通常,Windows二进制文件作为发行版的一部分发布,大多数时候作为安装程序包发布。在此包中,您将包含可执行文件所依赖的所有二进制文件。

请注意,如果您已经发布了二进制文件(您自己的软件),那么提供依赖项会更有意义。想想用户尝试使用第二方来源构建的稍微但不完全兼容的二进制文件并获得不稳定行为的最坏情况。

然而,您需要注意的一件事是,如果您发布第三方软件,则还必须遵守许可。在GPL的示例中,这意味着您需要提供一些相关文档,并提供用于根据请求构建这些二进制文件的源文件。 所以在某些情况下,更容易发货。