当前位置:  开发笔记 > 运维 > 正文

使用Perforce而不是Subversion有什么好处?

如何解决《使用Perforce而不是Subversion有什么好处?》经验,为你挑选了5个好方法。

我的团队已经使用SVN几年了.我们现在可以选择切换到Perforce.

进行这样的转换有什么好处(和陷阱)?



1> Sander..:

P4会在服务器上跟踪您的工作副本.这意味着

    处理大型工作副本的速度要快得多.我曾经有一个大型的SVN项目和一个简单的更新花了15分钟,因为它必须创建一个本地工作副本的树(数千个文件夹).文件访问速度很慢.P4将有关工作副本的信息存储在数据库中,因此任何操作总是接近瞬时.

    如果你弄乱你的文件并且不告诉服务器,你就麻烦了!您不能只删除文件 - 您必须删除P4客户端的文件,以便服务器知道.请注意,如果您在本地删除文件,则在连续更新时不会再次下载该文件,因为服务器认为您已经拥有该文件!当很多这种情况发生并且我最终疯狂地不同步时,我通常不得不求助于清理我的本地副本并再次下载,这可能非常耗时.你必须小心这一点.

Explorer shell扩展客户端(想想TortoiseSVN)糟透了,完全无法使用.

有两个GUI客户端应用程序提供最佳功能:P4Win和P4V,其中P4V更新,更易于使用,但功能不丰富.

虽然它们没有很多高级功能,但Visual Studio和Eclipse插件工作得相对较好.

一般来说,P4提供的功能远少于SVN,有时候会让人感到困惑.

工作副本定义很好而且灵活.我相信P4在这里优于SVN:您可以为工作副本文件夹定义蒙版并创建各种奇异的树,因此您只需要下载您想要的内容,而无需手动使用多个签出.当我在服务器上有数十亿字节的东西并且只想要它的特定子集时,这非常方便.我在类似的情况下使用SVN更麻烦.

P4下的分支是......奇怪的.分支集和不同种类的分支和令人困惑的UI.不幸的是,我不记得很多细节.

除此之外,它非常标准.

我建议您保留SVN,除非您处理巨大的代码库或讨厌乱丢文件系统的.svn文件夹.SVN + TortoiseSVN在大多数情况下更加舒适.


是不是需要有一篇完整的文章来解决它的方法,这意味着这是一个非常大的问题?
重新点2,P4V有一个"协调离线工作......"选项,可以帮助解决这个问题.此外,也许Sander最近没有使用图形客户端,但P4V比P4Win功能更丰富.Perforce正在放弃P4Win并专注于单一的跨平台图形客户端P4V.
作为更新,.svn文件夹问题在SVN 1.7中消失了
第2点不是问题.有一篇[整篇文章](http://kb.perforce.com/UserTasks/WorkingDisconnected)涵盖了解决这个问题的所有方法.

2> Marc Hughes..:

我目前在不同的项目中使用它们.

perforce分支机制是优越的.

perforce冲突解决工具更好.

我非常喜欢perforce强烈的改变列表概念.

Perforce似乎更快.

设置和运行更容易.

我们的一些成员非常喜欢perforce的MS Office插件,我在Mac上,所以我无法使用它.

SVN客户端更好,尤其是eclipse插件.

Perforce更贵.

这些只是意见,所以也许这是一个糟糕的答案:)

如果我已经在使用其中一个,我将很难切换,因为它们似乎都没有提供真正显着的优势,但转换的中断可能很大.

更新:自写这篇文章以来,我已完全转向使用GIT用于个人和商业目的.我会在任何一天通过SVN或Perforce选择它.



3> Douglas F Sh..:

你的团队是否评估过Git?它具有类似于Perforce中可用的功能,但是是免费的(FOSS).

在与大型团队合作时,要么是SVN的绝佳替代品.


坦率地说,我倾向于同意这一点.就更传统的代码存储库而言,没有什么能比得上Perforce.像Git或Mercurial这样的分布式系统在代码管理问题上解决了类似但略有不同的变化,在我看来非常值得一看.

4> lajos..:

我在工作中使用perforce,在家里使用svn.

perforce GUI非常好,但只有在你习惯它之后.它肯定有一个学习曲线,当非程序员开始使用perforce时,通常需要一些时间才能获得概念.

乌龟很棒,很容易使用.我的律师妻子使用它来颠覆她的所有文件;)

分支很容易.事实上这么容易,人们分支的原因不是太多.然后你整合,因​​为你分支.它很容易成为你唯一做的事情.

Svn集成在更多产品中.至少我使用的产品.这是一个很大的优势,因为如果你必须在开发环境外部使用eithere,它们都会变得笨重.

我们每隔一段时间就会遇到问题,因为它认为您的本地副本是最新的,但事实并非如此.然后你必须强制同步,然后如果仍然不好,删除你的本地文件并重新同步.从来没有与svn有这样的问题.这实际上是一个很大的问题,因为您甚至不知道您正在处理旧版本.

要考虑的另一件事是你想改变的原因.如果你有一个有效的系统,每个人都熟悉它并对它感到满意,为什么要更换它?


阿门.如果没有损坏,请不要修理它.

5> Greg Whitfie..:

在Perforce网站上,他们有一篇比较两者的论文: P4与SVN

显然,鉴于源代码,您必须意识到它强调Perforce优于SVN的优势,但它仍然是一个有用的读物​​.你永远不会知道,鉴于你自己独特的情况,你的团队可以从中受益的一个好处是其中一个好处.

我肯定会推荐Perforce,其原因已在其他答案中提到过,但我无法与从未真正使用它的SVN进行比较.

推荐阅读
小白也坚强_177
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有