Perforce and Xcode
I’m a big fan of Perforce for source control. I have limited experience with CVS and Subversion, but compared to MPW Projector and tlib, Perforce is a godsend. While not free like CVS and Subversion, an unlicensed version of Perforce does not expire and support two users and five client workspaces. BBEdit integrates well with Perforce. Xcode also integrates with Perforce, but I ran into some difficulties getting it configured.
The Xcode 2 User Guide provides decent instructions, but after following all of the steps, including specifying the P4PORT, P4CLIENT, and user name settings within XCode, I was greeted with: “No files in this project were found under the Perforce root.” I was baffled since I could interact with Perforce via both the command line and BBEdit.
On a whim, I set the P4CLIENT, P4PORT, and P4USER environment variables in my ~/.MacOSX/environment.plist file, logged out and back in, and relaunched Xcode. Everything then worked as expected. I then removed these environment variables and was surprised when Xcode continued to work. So, I’m not positive of the cause of my difficulties, but creating an environment.plist file that defines your p4 settings is a good idea regardless. I hope that this saves someone a headache.

October 9th, 2006 at 10:03 pm
Having gone from using perforce to being subjected to CVS and Subversion for the past four months, I promise you’re missing out on a lot of pain and suffering at the hands of CVS. Subversion is an improvement, but can’t even begin to compare to the dancing feet of the perforce man. Avoid them at all costs and stick with perforce.
October 10th, 2006 at 8:54 pm
“Subversion is an improvement, but can’t even begin to compare to the dancing feet of the perforce man.” Sounds like a quote destined to be featured on the Perforce main page
December 12th, 2006 at 3:31 pm
Looks like you stumbled into this odd error message just before I did. My solution and circumstances were quite a bit different than yours though. You can view my experience here:
http://cutterpillow.com/content/view/59/
It’s interesting that this error message seems to pop up in such different circumstances and the solution for each is just as different.
Dave