代码库。什么是好的?

时间:2010-09-11 02:48:50

标签: repository

我正在尝试在我的工作中为我的同事和我使用的所有代码(主要是C,汇编程序,批处理基础)设置一个存储库。我知道有关存储库的一些事情,但无法正确判断哪些是好的。我对它们没有经验,但到目前为止,Apache Subversion和Python的repo看起来还不错。还有其他好的吗?易于使用和设置?

7 个答案:

答案 0 :(得分:5)

看看:

您正在寻找的技术称为源控制。存储库是大多数不同源代码控制工具用来引用源代码集合的术语。源控件实例(例如SVN)可以具有许多存储库。通常,存储库包含一个项目或一组密切相关的项目。不同的项目将是您想要使用多个存储库的一个很好的例子。

Git和Mercurial是分布式源代码控制工具,而SVN和Perforce则不是。

一些提供商提供IDE集成(Perforce提供一个,你可以获得Subversion,即:Ankh for Visual Studio)。其他用户选择在IDE之外处理源控制作为纯文件系统选项。

如果您很高兴将源代码放在云中,git hub可能是一个很好的解决方案。他们提供您不需要管理的免费Git存储库。

答案 1 :(得分:4)

查看GitMercurialSubversionCVS。那些是大玩家。我认为SVN相对容易设置,但Git和Mercurial有一些真正狂热的用户,所以你可能会发现你更喜欢它们。

答案 2 :(得分:2)

我投票支持SVN,因为这是我使用的,但我必须承认我非常喜欢Git和Hg(Mercurial)背后的想法。

最重要的问题通常是合并,我认为,但SVN的合并跟踪使这个过程变得更加容易。如果你在Windows中,加上TortoiseSVN可以非常简单地管理你的repo分支。

对我而言,Git和Hg中真正吸引我的一个特点是它的分布式。如果我没有弄错的话,你对中央存储库的依赖就会消失,它只会让那些远程工作或经常断开连接的人的生活变得更轻松。例如,我在从SVN服务器检出的工作目录中完成所有工作。问题是,如果我没有网络连接,我就无法查看仓库或提交。这真的很糟糕,因为我希望能够在里程碑处检查我的代码,如果我在岛上工作,我就是做不到,简单明了。但是,使用Git和Hg,repo是本地的 - 它位于您的计算机上,然后如果您想稍后将更改推送到中央存储库,则可以完全执行此操作。

我仍然想搬到Hg,但是当最后期限一直在你身上时,你就会知道这个问题会发生什么。

答案 3 :(得分:2)

我建议您查看fossil。这是一个简单易用的分布式版本控制,也有故障票和维基。该工具本身是一个单独包含的可执行文件,因此它所需的唯一安装是将该可执行文件放入PATH上的合适文件夹中。它具有高度可移植性,可以为Windows和各种* nix平台提供二进制文件。

适用于各种规模的项目。 SQLite的完整项目历史在完成之后很快就从CVS转移到了化石,并且例如,SQLite的所有当前开发都保存在化石库中。

答案 4 :(得分:0)

github,或者是一个自有的git repo,我会争辩......

答案 5 :(得分:0)

试试Mercurial。开始cd进入代码文件夹并输入hg init就行了。初始化存储库后,您可以使用hg add添加所有内容,然后使用hg commit -m "Initial commit."或类似内容进行提交。在hginit.com还有一个非常棒的教程。

答案 6 :(得分:0)

Subversion,Git。 已经提到过CVS,但SVN超越了它。