建议请为家庭版控制系统

时间:2008-10-20 13:54:08

标签: version-control

我有一个真正需要在Source Control中的家庭项目。我尝试安装Subversion,我有一些经验,但无法让它工作。我不是特别想使用SourceSafe。我有点担心Git / Mercury有点神秘,虽然这只是基于意见而不是我的经验。

主要要求是:

  1. 必须是开源的(好吧,它需要是免费的,但听起来有点便宜!)
  2. 必须在Win32上运行
  3. 如果有可用的GUI界面
  4. 非常感谢提前!

    编辑:为了让大家知道,我安装了VisualSVN,并立刻让它工作。谢谢你的好建议。

17 个答案:

答案 0 :(得分:18)

我知道你提到你已经尝试过Subversion并遇到了一些问题,但你真的无法轻易安装和放弃

的配置

VisualSVN Server

非常容易设置&维护。


将VisualSVN用于后端,将TortoiseSVN用于客户端,您将立即启动并运行。

另外,如果你想在未来的路上切换到别的东西,你总是可以做一个VisualSVN存储库的svndump。

答案 1 :(得分:11)

答案 2 :(得分:5)

Perforce有一个免费的两个用户版本。优秀的产品。 http://www.perforce.com/

2012年更新:现在有一个免费的20用户版本,仍然很好,有新功能。

答案 3 :(得分:4)

不要被git吓到。它已经比以前更容易使用了!

它符合您的所有要求(在Win32上开源/免费/运行/有一个GUI,包括在内),并且有很多可用的资源。

作为一个非常基本的指南,使用命令行("Git GUI"应该非常自我解释):

  1. mkdir myrepo - 创建一个新目录,这可能是一个包含代码的现有目录
    • git init - 将目录放入git存储库。这基本上会在当前目录中添加一个.git/文件夹。这就像使用VisualSVN,创建一个新的存储库,然后将其检出到工作目录(只是没有服务器)
    • vim myfile.txt - 制作新文件,如果您有现有文件,显然可以跳过此
    • git add myfile.txt - 开始跟踪新文件(类似于svn add'文件)
    • git commit - 提交您在git add上运行的任何内容。
  2. ..就是这样。你有一个版本跟踪文件!当您更改文件时,再次执行git add myfile.txt以“暂存”更改,然后提交将所有暂存文件添加到提交中。

    与SVN的工作方式略有不同。使用SVN,您提交一个文件,然后将其发送到服务器。使用git,您可以暂存一个文件(或多个文件,甚至是一个非常有用的文件位),然后提交它们。

    您可以在Git GUI中轻松完成上述所有操作(包括创建存储库,在文件中暂存特定行)。

    在Windows上,安装msysgit

    然后,如果您不介意花费9美元,请观看Peepcode GIT episode以全面了解git是什么,它是如何工作的,以及如何使用它。

    或者,GitCasts也是一组非常好(免费)的截屏视频,涵盖了大部分基本内容。观看您认为对您有用的内容,我建议您观看setting up,然后normal workflow,然后GIT on windows

    最后,GIT Magic是使用git完成所有事情的好指南。我使用它很多,尽管在过去一年左右使用了很多git(它对于回答“我如何......”你忘记的事情很有用。说“我如何恢复丢失的提交”,“我该怎么办?将存储库重置为4个版本“)

    我还建议玩GitHub。使用git-hosting网站是一个很好的非常。当您创建新的存储库时,它会为您提供创建新存储库的命令列表,并将您的更改推送到github(我没有真正涵盖的内容 - distributed workflow gitcastspeepcode episodegit magic所有内容都很清楚)

答案 4 :(得分:4)

我认为SVN真的是你最好的选择。请查看有关如何设置的文档here

我在Windows框上设置了几个SVN回购,但从来没有真正出现问题,尤其是当您使用TortoiseSVN

答案 5 :(得分:3)

我无法相信没人提到GIT

它非常适合您的需求。每个工作目录都成为存储库。这是一个改变你的项目目录的简单案例。初始化和承诺然后开始工作。具有分支和合并的一些简洁功能。

答案 6 :(得分:3)

我个人使用SourceGear的Vault产品,它可以免费进行单一用户访问,设置轻而易举,它还有一个GUI管理客户端和VS集成。

答案 7 :(得分:2)

您可以在没有服务器安装麻烦的情况下使用Subversion。

只需下载TortoiseSVN并在您喜欢的文件夹中创建本地存储库。 使用相同的客户端进行更新,提交......

更多信息:link1 / link2

答案 8 :(得分:2)

有人提到Git;我会用TortoiseHg提及Mercurial。

答案 9 :(得分:1)

它不再流行,但我在使用CVS进行版本控制方面取得了巨大成功。我保留了一个“代码”文件夹,其中包含各种语言的所有代码片段,以及CVS存储库中的所有个人家庭项目。 CVS较旧,并且与重命名或重组文件夹/文件的其他系统不同。另一方面,它已经存在了很长时间,这意味着它有很多端口和GUI应用程序,以及IDE的集成包等。过去几年我一直很满意它。尽管有任何缺点,我一直在使用它。

答案 10 :(得分:1)

对于家庭项目,我使用了cvs和svn,效果很好。就个人而言,我觉得svn最初设置起来稍微困难 - 定义目录结构并使用这些URL似乎比它应该给予更多的麻烦。虽然svn通常在整个行业中有更大的用途,但如果你对cvs没有任何问题,我会过分担心这种区别。围绕源控制的概念(主要在两者之间重叠)更为重要。

答案 11 :(得分:1)

你至少应该看看开源化石VCS www.fossil-scm.org它可以作为DVCS和客户端服务器VCS工作。

  • 安装简单,只需一个可执行文件。
  • 易于备份,它是一个SQLLITE存储库。
  • 简单地随身携带您的存储库,我从拇指驱动器运行化石,现在可以将我的个人代码带到我的拇指驱动器的任何地方。

现在它没有GUI界面,但我相信将来某个时候会有一个界面。

如果你玩化石,你会发现使用命令行VCS并不像看起来那么复杂。

答案 12 :(得分:0)

我所知道的唯一符合您要求的选项是CVS和SVN。在那2个中,我会推荐SVN。我知道你已经尝试过但没有成功,所以也许你应该尝试发布另一个问题,准确描述问题所在。

我们光荣的领导者发布了一份描述how to setup SVN on windows的分步指南,可能会解决您的问题。

答案 13 :(得分:0)

嗯,坦白说,我建议吮吸它并做SVN。这可能是一个艰难的开始,但它会得到回报。

答案 14 :(得分:0)

对Subversion + TortoiseSVN的另一次投票,虽然它在基于FAT32的国内NAS上表现不佳。

答案 15 :(得分:0)

我一直在思考这个问题,并且一直在认真考虑Bazaar。我不能告诉你它有多好,没有使用它,但你可能想要检查它,因为它看起来很有希望。与Git和Mercurial类似,但他们声称设置和使用起来要容易得多。

答案 16 :(得分:0)

我使用了Thoughtworks中的Buildix。您可以将其安装在专用服务器上或将其用作VM。虽然它不仅仅是SVN:它还包括trac,Cruisecontrol和Mingle。