我们有一个非常酷的小型web框架,我们已经成功地使用了数十个客户端项目。我们计划将此软件发布给社区。然而,我正在绞尽脑汁想知道应该/不应该在新的开源软件项目页面上发布什么。网站必须具备哪些内容?文档?维基?一个链接下载?还有什么?发布开源项目的最佳实践是什么?
而且,一个相关但可能不同的问题是我们如何开始标记版本号。我们在内部使用的是SVN邮票。是否有一种很好的方法来确定何时开始调用0.9版本与1.0版本和1.1版本等等?
我们有一个非常酷的小型web框架,我们已经成功地使用了数十个客户端项目。我们计划将此软件发布给社区。然而,我正在绞尽脑汁想知道应该/不应该在新的开源软件项目页面上发布什么。网站必须具备哪些内容?文档?维基?一个链接下载?还有什么?发布开源项目的最佳实践是什么?
而且,一个相关但可能不同的问题是我们如何开始标记版本号。我们在内部使用的是SVN邮票。是否有一种很好的方法来确定何时开始调用0.9版本与1.0版本和1.1版本等等?
你可以得到所需条件由什么开源项目托管网站的想法提供:
至于版本号...我不认为任何人的制定了这样做,但:)随着思想的最低限度的最好方式,我会考虑:
0.9/1.0/1.1/1.0.1/...版本标签仅用于市场营销目的(就其良好意义而言)。这可以让您的用户/客户识别发布版本是主要的,次要的还是错误修复的,以及您是否认为它已经成熟或尚未成熟。
交付的最小数量是来源。其他交付物取决于您愿意如何帮助您的用户并为他们提供支持。
看看GitHub或谷歌代码。它们为自己的开源项目提供了一个非常好的起点。您可以描述您的项目,在wiki中记录文档,使用git或svn作为您的存储库,并提供下载以及问题跟踪和多开发人员管理。开箱即可学习和使用它们的好环境。
对于发布版本号:我不推荐0.9或类似的东西用于预发布。原因?那么版本1.9呢?它是主要发行版本1的第9次发行还是发行版本2的最后发行版?我的发布标准在此描述:http://code.google.com/p/tideland-eas/wiki/ReleaseStandard。我正在使用三位数计划,主要,次要和修复,以及状态代码,alpha,beta,gamma和发布日期。所以我能够轻松地并行处理多个版本。
希望这会有所帮助。
MUE
选择一个网站主办第一源(SourceForge上,例如)。使用匿名结账在版本控制系统上获取源代码。在那里获取一个电子邮件地址供人们与您联系。
称此第一个版本0.1。这是因为您还没有文档来支持该项目。
然后呼吸。
然后开始查看文档,如维基。一旦你掌握了所有的细节,并且你认为这个版本已经准备好了一些黄金时间,然后转向1.0,并开始提供二进制下载。
确保您考虑源代码的许可证。
当我看到一个开源项目时,我检查的第一件事就是许可证。如果许可证不是GPL2/GPL3/BSD风格或类似的,那对我来说就是一个激励人心的问题。
许可证意味着人们将如何使用它,如何发展,以及发布它的公司拥有多少。通过选择开源,我尽量不依赖公司(依靠他们的股东),我真的选择使用真正免费的软件。
由于开源社区对企业权力非常敏感(谷歌目前似乎有点不受此限制),因此您必须确保在您的网站和其他材料上传送真正免费的信息你发布有关该软件。
查看更多有关FSF的free software和open source的定义。
在版本控制上,我认为从绝对最好的地方开始是Semantic Versioning。