4

我们有一个非常酷的小型 Web 框架,我们已在数十个客户项目中成功使用它。我们计划将此软件发布到社区。但是,我正在为新的开源软件项目页面上应该/不应该做什么而绞尽脑汁。网站必须具备的东西是什么?文档?一个维基?有下载链接吗?还有什么?

而且,一个相关但可能不同的问题是我们如何开始标记版本号。我们在内部使用的只是 SVN 标记。有没有一种好方法来确定何时开始调用 0.9 版本与 1.0 和 1.1 等等?

4

6 回答 6

4

您可以了解开源项目托管站点所提供的要求:

  • 作为该项目的“一站式商店”的网站
  • 文档,可能是 wiki 形式
  • 允许浏览、匿名签出以及经过身份验证和授权提交的源存储库
  • 问题跟踪和新功能请求

至于版本号......我认为还没有人想出最好的方法:) 考虑到最低限度,我会考虑:

  • v1.0 应该可以用于生产了
  • 主要版本号更改可能会完全失去向后兼容性(如有必要 - 虽然这几乎不是目标!)
  • 次要版本号更改通常应该大部分兼容 - 弃用可能比删除/重命名 API 位更好
  • 小于次要版本号的更改应仅包括次要功能添加(如果有)和错误/性能修复
于 2009-02-17T08:56:45.453 回答
2

关于版本控制,我认为绝对最好的起点是Semantic Versioning

于 2011-05-26T15:13:43.803 回答
1

0.9 / 1.0 / 1.1 / 1.0.1 / ... 版本标签仅用于营销目的(在良好的意义上)。这允许您的用户/客户确定该版本是主要、次要还是错误修复,以及您是否认为它已经成熟。

交付的最低限度是来源。其他可交付成果取决于您愿意如何帮助您的用户并为他们提供支持。

于 2009-02-17T08:56:17.310 回答
1

首先选择一个网站来托管源代码(例如,SourceForge)。在带有匿名签出的版本控制系统上获取源代码。在那里获取一个电子邮件地址,以便人们与您联系。

将此第一个版本称为 0.1。这是因为您还没有支持该项目的文档。

然后呼吸。

然后开始查看文档,例如 wiki。一旦你在基本的细节层面上涵盖了所有内容,并且你相信该版本已经准备好迎接黄金时段,然后转移到 1.0,并开始提供二进制下载。

于 2009-02-17T09:03:53.563 回答
1

确保您考虑源的许可证。

当我查看一个开源项目时,我检查的第一件事就是许可证。如果许可证不是 GPL2/GPL3/BSD 风格或类似的,那对我来说是一个消极因素。

许可证意味着人们将用它做什么,它如何发展,以及它由发布它的公司拥有多少。通过选择开源我尽量不依赖公司(他们依赖于他们的股东),我真的选择使用真正免费的软件。

由于开源社区对企业权力非常敏感(Google 目前似乎对此有点免疫),因此您确实必须确保在您的网站和您发布的有关该软件的其他材料上传递真正免费的信息。

查看更多关于FSF 的自由软件开源定义的信息。

于 2009-05-30T10:46:48.327 回答
0

看看 GitHub 或 Google Code。它们为自己的开源项目提供了一个很好的起点。您可以描述您的项目,在 wiki 中记录,使用 git 或 svn 作为您的存储库,并提供下载以及问题跟踪和多开发人员管理。开箱即用的好环境,可以从中学习和使用它们。

对于发布号:我不推荐 0.9 或类似的预发布版本。原因?1.9版怎么样?它是主要版本 1 的第 9 个子版本还是版本 2 的最后一个预发布版本?我的发布标准在这里描述:http ://code.google.com/p/tideland-eas/wiki/ReleaseStandard 。我正在使用三数字方案,主要、次要和修复,以及状态代码、alpha、beta、gamma 和发布日期。所以我能够轻松地并行处理多个版本。

希望这可以帮助。

于 2009-02-17T09:02:38.980 回答