塑料SCM与Mercurial?在Windows 7上需要Visual Studio 2005的源代码管理

Pet*_*vin 12 mercurial plasticscm

1)有没有人使用塑料SCM?它可靠吗?

2)与Mercurial相比如何?(看起来这是Windows上DVCS的一个很好的候选者.我试过Git并且真的不喜欢它.)

3)我真的很喜欢TortoiseSVN.我喜欢一个中心模型,因为如果它在存储库中它是"安全的"并被跟踪的.这是一个问题:对分布式版本控制(DVCS)的兴奋值得炒作吗?

我的环境:

  1. Windows 7的

  2. Windows开发(Dev.Studio 2005,SQL Server 2003); 整合会很好

  3. 两位开发者共享相同的代码

  4. 几乎每天都会将代码推送到生产服

pab*_*blo 13

因为我是开发人员之一,所以我的答案将偏向于Plastic SCM.话虽这么说,让我们试着回答你的问题:

  1. Plastic SCM可靠吗?它目前被全球各地的大型,大型,中型和小型团队使用.我们没有(但是:P)庞大的用户群,比如Git或Mercurial,但我们依靠一支极度热情和才华横溢的团队.例如,检查我们的负载测试结果(我们确实将塑料置于重负载下).

  2. 它与Mercurial相比如何?虽然我认为我们可以通过功能不断击败每个"传统"版本控制功能,但就核心功能而言,Git和Hg可能是最难的.让我们关注Hg,Plastic增加了什么?我想我可以聊几个小时,但我们试着想出一个简短的清单,基本上:

    • 易于使用的工具:从GUI,ShellExtension,Visual Studio插件,集成差异/合并(是的!尝试使用代码重构支持我们的XDiff/XMerge!),分支资源管理器,基本上让你做所有分支和合并从图形的角度来看......好吧,使用Plastic你不仅可以获得"引擎",而且可以获得所有你需要的整块车.我可以为VS用户提及其他工具,比如方法历史支持,并且列表会增长和增长......
    • 像Mercurial一样:完全用于处理分支和合并.从我的角度来看(有偏见的)分支在Plastic中更简单,因为默认情况下"命名分支"是存在的.我们建议用户接受"每个任务的分支".
    • 可配置的数据库后端:您可以在SQL Server,Firebird,Oracle,MySql甚至是一个小型SQLite中存储您的数据(以及以后使用标准SQL接口,如果您需要构建自己的应用程序).我们没有在这里重新发明轮子:默认为交易;)
    • 基于ACL的安全性:对于小型团队来说可能不是关键,但它确实存在.
    • 对于高级合并:Hg中的每个"变更集"都限制为最多两个父项,你在Plastic中没有这个限制,但是好的,我们可以争论几个小时的细节...可能不值得;)
    • 同样对于高级集成商:我们在项目级别处理合并跟踪,这意味着我们可以无缝地进行"部分合并"(仅合并分支的一部分).Hg和Git有点难.
  3. DVCS值得吗?当然是.好的,一步一步:

    • DVCS之所以好,不仅因为它支持分布式开发,还不错,因为所有新的DVCS系统(Hg,Git,Bazaar,Plastic ......)都实现了合并跟踪.所以,在一天结束的时候,对于很多人而言,DVCS只是正确地进行了合并跟踪(不如推/拉那么令人震惊,但却是如此).
    • 能够在笔记本电脑上拥有自己的SCM非常棒.我一直在用这种方式使用Plastic(现在我有一个基于SQLite的服务器,超快速和超轻)多年来......好吧,更好的是:你永远不会因为互联网连接而变慢,你可以随时合并(记住每个任务的分支),检查自己的更改......一切.然后在完成后将更改推送回主服务器.这简直比较好.
    • 现在:与Git和Hg不同,Plastic SCM能够在两种模式下工作.您想拥有一个中央服务器并直接连接到它而没有中间副本吗?你能行的.你想以真正的DVCS风格工作吗?你也可以这样做.这就是塑料如此灵活的原因.

最后,如果您使用Visual Studio + W7 + 2开发人员...去购买免费的塑料SCM社区版......正如我所说,Hg是一个很好的核心,但塑料至少同样好,并且全部打包你以前用作Win开发人员的工具(除非你喜欢CLI并且讨厌鼠标......即使那时Plastic也有一个CLI:P).

  • 我想指出,创建git和mercurial的原因是BitKeeper(一种商业DVCS,在某些条件下拥有免费许可,与Plastic SCM完全一样)的政策变化.另一件事,你想要改变的那一天,你将被困.看你的步骤. (4认同)

jam*_*kes 10

我曾经玩过塑料SCM,虽然它看起来更强大,但我觉得它比Mercurial使用起来要麻烦得多.有两件事我特别不喜欢:

  1. Subversion和Mercurial将文件与其原始版本进行比较以确定需要检入的内容,而Plastic SCM要求您在编辑文件之前明确检出文件,并且默认情况下还将文件标记为只读.这就是Team Foundation Server运行的方式,它可能是TFS的一个"功能",吸引了比其他任何批评更多的批评,所以看到Plastic模仿它是一个很大的失望.我知道您可以将Plastic配置为不将文件标记为只读,但如果您这样做,我不知道它在实践中的效果如何.

  2. 与Mercurial的GUI前端TortoiseHg相比,我发现它的GUI工具设计过于笨拙且难以使用.他们真的需要控制他们的平面设计师.毕竟,这是一个版本控制工具,而不是电影.


bro*_*eef 7

我一直在研究塑料和汞一段时间,虽然我玩了一会儿,但我真的开始爱上塑料了.我之所以这样做是因为在我目前的工作中,我们使用SVN并且代码合并非常手动,我认为必须有更好的方法.所以,在我的空闲时间里,我已经进入了Plastic并喜欢它.这些工具非常直观; 没有更好的方式来描述它们.哦,当然,我对我的命令行能力毫无疑问,但是看到你正在做的事情还有待说些什么.当然每个人都有一个命令行,所以我从不关心任何VCS的那一部分.

对于DVCS,Plastic确实为您提供了比我在任何其他系统中看到的更多的灵活性.很容易拥有存储库的多个副本并来回推送/拉取更改.此外,由于GUI适用于所有平台,因此一切都是相同的.我可以选择使用我想要的东西,我的队友也可以.

我还在学习和深入研究,但我建议你自己做一些研究,下载并尝试一下.我没有阅读手册,我可以开始使用它.那太棒了!