小型科学图书馆的托管网站


9

在我的研究工作中,我一直在开发一个小型的C ++库,旨在促进C ++计算代码与Octave / Matlab(当后者用于后处理目的)之间的通信。

我想在一些免费的托管站点(例如Sourceforge或Github)下,根据GPL发布这样的库。

不过,老实说,我缺乏选择哪个站点更适合作为(小型)图书馆的站点的经验。

一方面,github在我看来更直接,另一方面,Sourceforge是科学代码的参考站点,其中许多托管在此。

有什么建议吗?


编辑:我扩大了我的问题。

我正在谈论的库是一个很小的项目( CL,目前在Bitbucket上的一个私人存储库中),几乎是个人化的,此后我的主管提出了2年来无聊的技术要求和6个月的代码设计(主要是通过试用和错误)。15K

经过一番询问后,我注意到sourceforge具有一种很好的机制,可以使人们对项目页面的访问和下载进行统计,因此可以以某种方式计算仅下载lib来使用它的人们(用户)(如果有的话)。

另一方面,从开发人员的角度来看,Github看起来更容易(这里我指的是对分析,扩展,派生代码感兴趣的人)。


1
我有几个澄清的问题要问:)您使用的是什么版本控制系统?您是否有兴趣提供整个代码历史记录,继续开发并接受其他用户的贡献?当您将软件用于学术工作时,您是否有兴趣获得引用信用?在选择托管站点时,您认为哪些因素最重要?
阿隆·艾玛迪亚

@AronAhmadia,抱歉回复晚。我将尽快回答您的问题,以扩大我的问题。
Acorbe


@DavidKetcheson,似乎有我需要的答案,谢谢
Acorbe

Answers:


9

哪个网站更好,将取决于您自己对此的赞赏。

虽然推广我个人喜欢的任何系统可能很诱人,但我认为正确的选择与您的个人喜好和工作方式息息相关。

有多少开发人员在您的项目上工作?您将多久更新一次?有人愿意分叉的可能性有多大?您更喜欢哪种修订系统?您更喜欢哪个用户界面?

老实说,SourceForgeGithub都是成熟的站点,并且都提供了一些很棒的工具。但是,如果您对使用它们感到不舒服,那么无论其他用户怎么说,他们对您的好处都是有限的。

两个站点都一样好,它们只是选择做不同的事情。它们都被搜索引擎很好地引用,从一个下载软件就像从另一个下载软件一样容易

我强烈建议您将两者都看一下,然后看看您最满意的是什么。再次:哪个网站更好,将在很大程度上取决于您自己的工作风格和个人喜好。


6
旁注:从2012年开始,大多数人都在使用GitHub或迁移到GitHub。
astrojuanlu 2012年

@ Juanlu001:这是一个有趣的说法,您有消息来源吗?无论如何,如果您不只是git,那么使用其他网站可能会更舒服。
Pedro

@ Juanlu001,我们可以考虑一下“用户”吗?考虑到人们将代码开发到计算科学中时,我确实同意您的观点。那么那些对数学更感兴趣并且偶尔会写代码的人呢?
Acorbe 2012年

1
@ Juanlu001:对不起,还没有解决。提交次数与基础修订管理系统的工作方式有更多关系。每月有多少新项目启动或下载?但是,Kudos公开承认您没有任何数据可以支持您的原始声明。
2012年

2
@Pedro,我明白你的意思,实际上我想纠正和澄清自己。说到用户数量,并不是大多数人都在使用GitHub:在GH主页上,大约有250万用户,而在SF中,根据sourceforge.net/blog/sourceforge-myths,大约有350万用户。 2011年底。OTOH,一些有价值的科学项目,如NumPy,SciPy和matplotlib,最近很高兴地迁移到了GitHub,但是后者是另一种主观陈述,我找不到任何支持的方式。
astrojuanlu 2012年

6

前往Github。

Github的发布模型是未来。Github的派生,拉取请求和合并模型与科学出版模型非常接近。许多科学界正在使用Github托管其研究项目的数据和代码。有一些使用Github作为提交和出版的唯一途径的开放获取期刊。另外,您将获得更好的Google排名,从而吸引更多潜在用户。Sourceforge运行缓慢,并且主要托管无效项目。近年来,许多积极维护的项目已从Sourceforge迁移到Github。


那就是我可能会做的。我的询问正将我带到这一点。
Acorbe

5

Google代码是另一种选择,因为它们提供svn / git / hg,并且几乎每个人都有Google ID。

无论您选择哪个站点,我都建议将tarball放在顶部的某个位置(某些站点已经这样做了),因为大多数人不熟悉版本控制,并且大学中的部门服务器通常运行5年的OS,如果幸运的话,可能会有svn已安装。


4

还有一种选择是使用Bitbucket。这是很好的兼容水银(汞)。我对Hg的个人经验是,它是一个简单而功能强大的版本控制系统。我相信它更适合个人软件开发。对于大型团体,我也建议使用git,并因此建议使用github。尽管如此,我对bitbucket及其功能还是很满意的。我从一个私人仓库开始了这个项目(在这个仓库中,您可以有无限多个,包括一个用于您的论文和科学论文的项目),并且当该项目足够成熟时-我将其转换为公开发行。

如果您不熟悉版本控制,尤其是在Mercurial中,则建议使用HgInit。我的一位同事在我第一次开始使用修订控制时向我显示了此页面。我发现它很有用。


我同意。在我看来,与git相比,Hg的学习曲线较小。
stali 2012年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.