大学环境的最佳源代码控制(管理存储库的开销很低)

时间:2012-03-13 22:31:16

标签: version-control administration multiple-repositories

有没有人知道源代码控制系统的解决方案(网络托管或其他方式),该系统在信息技术成为焦点的大学环境中运作良好?我们希望将其作为校园范围内的“版本控制服务”提供,就像大学使用电子邮件服务一样。具体来说,我说的是以下特点:

  1. 每个学期都有大量新存储库创建/管理。任何编程课程或研究项目都可能要求学生在各种源代码环境(包括.NET,Java,C ++,LaTeX)中使用源代码控制。
  2. 学生应该能够创建和管理自己的存储库。涉及管理员/讲师/等。否则不可扩展。
  3. 存储库存储应该安全(私有),并且可以存档以尊重知识产权(防止剽窃,保护研究IP)。
  4. 任何或所有源代码控制(例如CVS / SVN / GIT)都是可以接受的。
  5. 远程访问存储库至关重要。学生/研究人员可以在指定的实验室或远程工作。分配标记可以由在任何地方“检出”代码的教师完成。
  6. 如果存在学术许可,则必须为> 500名学生进行扩展。
  7. 许多商业/免费产品(基于网络或其他)不满足条件#1和#2,因为它们需要超级用户来管理帐户/存储库/访问。诸如Google Code,sourceforge.net,GitHub等解决方案不满足条件#3,因为存储库始终是公共的。

5 个答案:

答案 0 :(得分:2)

GitHub似乎满足您的要求。您可以在Intranet中设置自己的实例; https://enterprise.github.com/

答案 1 :(得分:2)

这是免费的:http://gitlabhq.com/ 您可以在此工具上添加存储库。 为了安全起见,您使用RSA密钥。

我建议使用Git。 SVN和CVS已经过时了。

答案 2 :(得分:1)

你可以在学生私人文件存储中使用git,如果他们有这样的东西,git不需要托管而不是存储文件的地方。

答案 3 :(得分:1)

  • Redmine(SVN,CVS,Git,Mercurial,Bazaar和Darcs)
  • UberSVN(SVN)
  • Private Assembla(?)(SVN,Git,Mercurial)

答案 4 :(得分:0)

我使用的一个解决方案是在Truecrypt可变大小加密容器中创建主GIT存储库。容器放在Dropbox文件夹中。存储库被克隆到本地硬盘驱动器,后者将成为工作目录。所有工作都在本地存储库中完成并签入。我编写了安装加密容器的脚本,将本地存储库推送/拉回主存储库并卸载加密容器。 Dropbox会检测加密容器中的更改并将其与Dropbox服务器同步。保持安全性,因为加密文件是发送到服务器的唯一内容。只有确保安全的真正方法是自己进行加密。

您需要设置的只是一些脚本,安装了truecrypt和Dropbox帐户。可能会编写一些基本软件来自动执行某些步骤。为了使其可扩展且成本低,基本步骤仍然有效。创建主存储库和本地存储库,加密主存储库,处理本地存储库并将更改同步到主服务器,在线或在服务器上备份加密的主存储库。