<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	>
<channel>
	<title>Comments on: Why Perforce Is No Good</title>
	<atom:link href="http://ascarter.net/blog/2005/11/27/why-perforce-is-no-good/feed/" rel="self" type="application/rss+xml" />
	<link>http://ascarter.net/blog/2005/11/27/why-perforce-is-no-good/</link>
	<description>coding in the rain</description>
	<pubDate>Fri, 21 Nov 2008 21:16:52 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.5.1</generator>
		<item>
		<title>By: andrew</title>
		<link>http://ascarter.net/blog/2005/11/27/why-perforce-is-no-good/#comment-7</link>
		<dc:creator>andrew</dc:creator>
		<pubDate>Thu, 18 May 2006 17:45:08 +0000</pubDate>
		<guid isPermaLink="false">http://ascarter.net/blog/2005/11/27/why-perforce-is-no-good/#comment-7</guid>
		<description>I agree with every one of your points.  SCM's should stay out of the way until you need them - which describes Subversion perfectly.  Perforce on the other hand is like a house guest who rearranges your furniture because that's how he likes it.  No thanks.</description>
		<content:encoded><![CDATA[<p>I agree with every one of your points.  SCM&#8217;s should stay out of the way until you need them - which describes Subversion perfectly.  Perforce on the other hand is like a house guest who rearranges your furniture because that&#8217;s how he likes it.  No thanks.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Dan</title>
		<link>http://ascarter.net/blog/2005/11/27/why-perforce-is-no-good/#comment-6</link>
		<dc:creator>Dan</dc:creator>
		<pubDate>Thu, 18 May 2006 14:45:07 +0000</pubDate>
		<guid isPermaLink="false">http://ascarter.net/blog/2005/11/27/why-perforce-is-no-good/#comment-6</guid>
		<description>Can I add a couple more problems?

Branching
This is very expensive in Perforce: you have to copy everything to make a branch. As a result, branching can only be done for large sub-projects where you can afford to waste a day messing around with Perforce.

GUI Handling of Large Changelists
This is bad - you end up searching by hand through giant change lists looking for a few problem files. Not a flaw in the core system, but annoying.

Handling of Roll-Back
Rolling back to a previous version is one of the useful features of source control. Yet on Perforce there's no nice way to do this (i.e. to set the depot to use an earlier version of a file).

Use of Read-Only Bits
Perforce takes control of whether you can write to a file. This is annoying if you accidentally include an output file (e.g. a .obj or .class) in your source-controlled files.

Performance
Everything must be done through the server, even things that have nothing to do with the server (e.g. editing a file you already have). Which creates a wonderful bottleneck if all your company want to work at once.

The Fundamental Moronity of Trying to Control Client-Side Files from a Server
The client isn't allowed to edit client-side files without asking the server! Who came up with this idea?! It relies on the user only working through Perforce plugins (i.e. never using their operating system directly), and those plugins working properly. 

I can't understand why people pay to use Perforce when SubVersion is better and free.

Thanks for letting me let off some steam. Back to using the bloody software...</description>
		<content:encoded><![CDATA[<p>Can I add a couple more problems?</p>
<p>Branching<br />
This is very expensive in Perforce: you have to copy everything to make a branch. As a result, branching can only be done for large sub-projects where you can afford to waste a day messing around with Perforce.</p>
<p>GUI Handling of Large Changelists<br />
This is bad - you end up searching by hand through giant change lists looking for a few problem files. Not a flaw in the core system, but annoying.</p>
<p>Handling of Roll-Back<br />
Rolling back to a previous version is one of the useful features of source control. Yet on Perforce there&#8217;s no nice way to do this (i.e. to set the depot to use an earlier version of a file).</p>
<p>Use of Read-Only Bits<br />
Perforce takes control of whether you can write to a file. This is annoying if you accidentally include an output file (e.g. a .obj or .class) in your source-controlled files.</p>
<p>Performance<br />
Everything must be done through the server, even things that have nothing to do with the server (e.g. editing a file you already have). Which creates a wonderful bottleneck if all your company want to work at once.</p>
<p>The Fundamental Moronity of Trying to Control Client-Side Files from a Server<br />
The client isn&#8217;t allowed to edit client-side files without asking the server! Who came up with this idea?! It relies on the user only working through Perforce plugins (i.e. never using their operating system directly), and those plugins working properly. </p>
<p>I can&#8217;t understand why people pay to use Perforce when SubVersion is better and free.</p>
<p>Thanks for letting me let off some steam. Back to using the bloody software&#8230;</p>
]]></content:encoded>
	</item>
</channel>
</rss>
