Domain: perforce.com
Stories and comments across the archive that link to perforce.com.
Comments · 111
-
Re:inaccurate
Google *used* Perforce. Past tense. Your own link details the custom system they built to replace it.
That's true now, and in 2015, but the commercial product was used until 2013 or so and when this paper was published in 2011, the Perforce metadata had exceeded 1TB. The paper doesn't give the total data size, but it certainly had to be in the region of tens of petabytes even then.
The reason I didn't mention Piper (the in-house Perforce replacement) was because it seemed like unnecessarily complication. Google managed a Perforce repository approximately four orders of magnitude large than Microsoft before replacing it, so Piper isn't really relevant to the point.
-
Re:stop trying, use git instead
That and because it's explicitly server-tracked (no client-side, "this file has been modified") it's quite fast. Down side is always rememebering to checkout your file before editing, otherwise tracking down a manually editted file can be a bitch.
(another AC here). I think they've fixed that part, p4 reconcile looks like it automagically figures out what files you've manually edited client-side so the server-side knows what you did.
(They also appear to have some sort of web app for documents and spreadsheets, but I haven't tried it yet.)
-
Re:I'm sorry, but
-
Re:Perforce
Allow me to help you out here:
http://www.perforce.com/perforce/doc.current/user/relnotes.txt
-
Re:Strange Complaints
You choose to not have a case sensitive file system and complain about it. I'll leave understanding what I mean as an exercise for the reader. Hint: disk utility.
Just don't reformat the root partition as case-sensitive! I tried that, and it broke many things.
I now divide the hard drive on my MacBook Pro into two partitions. The root partition is case-insensitive, and the second partition is case-sensitive and mounted at
/usr/local. My Time Machine backup drive is formatted as case-sensitive so that it'll be able to deal with the /usr/local stuff.I have a Perforce server running on my machine. I learned the hard way that the Mac version of Perforce assumes it's on a case-sensitive volume, and things break if it's on a case-sensitive one. However, there's an undocumented option to force the Perforce daemon into case-sensitive mode. "p4 help undoc" displays the documentation for undocumented options, oddly enough.
Many common programs from Unix-land are most easily downloaded and compiled (if necessary, where binaries aren't available) with FinkCommander.
-
Re:Move to CVS
SVN and CVS both suck. Google doesn't use SVN internally for its main codebase (it uses Perforce).
Life on the Edge: Monitoring and Running a Very Large Perforce Installation - by Dan Bloch, Google
-
Re:Choose them all under one.
Yeah, that's the +l option (set per file), usually used for binary files that can't easily be diffed, hence have to be edited exclusively:
http://www.perforce.com/perforce/doc.042/manuals/p4guide/04_details.html#1047746
-
Ask the company to release it.I wrote some code for my company. It was a tool to help developers work better (A web interface to Perforce: PB.
Since it was not related to the primary product of the company, I simply asked if I could release it to the public. They agreed, so I slapped a company copyright on the file with a BSD-style clause and released it. Unlike you, I was not concerned about ownership - I just wanted to make it available. Now, this was at a startup run by engineers, so it was a pretty easy sell, but it's probably still worth a shot. Just ask - worry about the paperwork after you ask.
-
A chapter in "Beautiful Code" is on this topic...
Laura Wingerd and Christopher Seiwald wrote an excellent chapter on this topic for O'Reilly's Beautiful Code book (just out). See Chapter 32, "Code in Motion". The code from their chapter is online here: http://www.perforce.com/beautifulcode/
-
Re:Perforce?
It's just as free as CVS/SVN for two users. They offer a completely free version that never expires: http://www.perforce.com/perforce/evaldemo.html
-
free software
Perforce has handled file renames and atomic commits for years now. I'm just curious why Perforce isn't used more widely, as it sounds like Subversion is just now trying to catch up with where Perforce has been for a long time now.
Perforce is not free software.
Yes, I know about their license for open source projects. But we all have seen what happens when you use a proprietary versioning system on a free software project (Linux kernel).
If you are talking about all types of development efforts in general (including closed source), then yeah, I would much rather be using Perforce than some of the commercial version control systems that really stink (PVCS/Merant and VSS to name two), but Perforce tends to be more expensive than the other commercial versioning systems, and CVS/SVN is better than the less expensive commercial versioning systems.
At my job, we just moved many of our projects from PVCS/Merant (godawful piece of crap) to CVS and we are so much better for it. Renaming in CVS is kinda annoying, but if we ever decide to switch from CVS, a CVS repository can be converted to pretty much anything else without too much trouble. -
Re:windows cvs
-
Re:windows cvs
-
Re:What tool, you ask?Perforce already offers free licenses for qualifying open source projects.
But, Perforce is centralized and the kernel developers want a distributed source control system.
-
Re:Rule of ThumbSo do IBM (with Clearcase). In fact any fairly serious SCM system that's available out there doesn't quote a price on the front page.
perforce does - the pricing link on the front page takes you to the prices on this page
-
Re:Perforce LicensingYeah, I love perforce too. The good thing is (if you RTF Licensing terms from the website) is that GPL/BSD and other open source projects can get a P4 license for free.
Blockquoth the site:
Organizations developing software that is licensed or otherwise distributed exclusively under an Open Source license may be eligible to obtain Perforce licenses gratis. This includes upgrades but not support. Perforce Software reserves the right to approve the Open Source license; those fitting The Open Source Definition, including the GNU and FreeBSD licenses, are good candidates. Execution of a End User License Agreement for Open Source Software Development (PDF) is required. For more information, please see the Perforce and Open Source FAQ or contact opensource [at] perforce [dot] com
-
Re:Speed compared to Perforce?
I wouldn't say that Perforce is going to lose out.
Perforce easily handles repositories with hundreds of thousands of files.
Perforce is dead simple to setup and has a number of 'enterprise' type features (distributed repositories, caching proxy servers for satellite offices, ftp/http frontend, etc).
Perforce support is top-notch. Perforce has the best support team I've ever contacted.
You've gotta love a SCM that offers GUIs for Windows, OS X, Linux, Solaris, & FreeBSD: http://www.perforce.com/perforce/products/p4v.html .
Finally, in addition to the free 2-user version, Perforce offers free licenses to projects developed under a recognized open source license.
Good, free software is wonderful. But there's no shame in paying for a solid commercial product backed by a fantastic company. -
Re:I got hit HARD! :(
I had a backup drive with everything mirrored that was unshared and secure and it managed to overwrite my ENTIRE backup as well on that machine.
You kind of point out in that sentence along that your drive wasn't secure, now was it? :).
Best thing I can recommend, is use some sort of RCS, (http://www.perforce.com/ is great for up to two people, free!), and then make a checkpoint or a targz of it nightly. -
People are still using CVS?Even Linus doesn't use it.
IMHO there are much better alternatives out there. I use Subversion at home and Perforce (definitely worth the cost) at work and I'll never go back. Source control without atomic commits really isn't much control at all...
-
Re:I don't like CVS, Subversion, or Arch
Try perforce. It's free for personal use, use changelists and has a very nice user interface (web based or gui).
-
Cloudscape history
Cloudscape Inc was founded in 1996 and acquired by Informix Corp in september 1999. IBM got Cloudscape in 2000 when it bought Informix.
-
Re:We're off to a bad start here, unfortunately
FYI, you don't need p4 or even access to the WWW to get a copy of jam -- just ftp here. It builds under a standard C or C++ compiler. Furthermore there are at last count two extension to jam available -- Boost.jam and FT jam. Regards, Ben
-
Re:We're off to a bad start here, unfortunately
My Anonymous Friend... The salutations are appreciated. It has been a challenge for our team to develop and to share the GPSTk. I hope you discover its benefits, and I hope they outweigh the distastefulness of Perforce and Jam.
Please allow me to briefly explain why Jam was deliberately chosen over the GNU autoconf toolchain as the build process for GPSTk.
Jam addresses a larger set of users than GNU autoconf. Does configure work using the Borland free compiler? With MS .NET or MSVCC? No. We did not want to ignore that important community, not did we desire to support multiple build processes. Can make resolve library dependencies dynamically (upon invocation)? No. These are practical examples of why Jam was chosen over the autoconf/configure/make toolchain for the GPSTk.
Jam is not just a "hack" as one reply claims but a serious contender for the replacement for the make/configure/autoconf toolchain. If autoconf/make is such the obvious choice for all projects--then why are there so many alternatives? Other make variations or replacements include ant, cmake, qmake, and confix.
However I will be the first to admit Jam has flaws. Poor documentation is perhaps the greatest. Lack of familiarity is a runner up IMHO. Despite its flaws, Jam was chosen for its simplicity.
Perhaps the above sounds too defensive. I don't want to make the impression that the GPS Toolkit team would not consider switching to, say, CMake or autoconf. We have chosen the Open Source route for this project. The "many eyes" principle is founded upon challenge--we should accept this challenge to our build process. And we know we are asking for challenge by not following the autoconf convention. But the effort to switch build processes would only be considered if (1) the new build process broadened the user base or (2) it addressed technical inability in the current build process. Otherwise, the choice of build tool is arbitrary and if so, our choice is Jam. -
Ouch, not "JAM" ! Non Java-centric "jam" exists
But there is a good middle ground between roll-your-own-ant and Maven, and it's called Javagen Ant Modules (JAM)
...
That's very bad news, because the open-source build tool "jam" already exists and has been around for a very long time. And it's really good too.
People really ought to google a bit before picking names for their project tools. Sure, names can often be reused without conflict, but here both jam's are program build tools, and that's just plain short-sighted. -
Re: Large CVS projectsI'm a FreeBSD developer/committer (and has been for 7 years).
We use CVS for the primary repository, and Perforce for an extra repository with a gazillion branches where a lot of the larger projects are done.
The primary reasons we use CVS is (A) habit (it was the only relevant alternative when we started), and (B) The distribution architecture we have for it (cvsup).
Given that we use cvsup as one of our primary methods of distributing continous updates, we would have to re-train about a million users (guesstimate). We also have thousands of developers that are familiar with CVS, these would also need re-training.
Those of us that has looked carefully at the version control/configuration management issues believe we are taking a continous and fairly high cost from CVS. We are probably going to do the switch at some point, but before we do, the relevant infrastructure needs to be in place (distribution of repository copies and checkout a la cvsup is probably the most important), and we should get something with all of the features we need, so we don't have to do one more switch.
The most important that we presently lack are cheap branching, distributed branching (being able to create a branch that only exists in a mirrored repository), and idempotent merges (the same change can be merged through several branches and only enter the system once). Tracking directory metadata and helping with renames etc would be nice, but isn't that important for FreeBSD. (I believe this to be more important than the other shortcomings of CVS for smaller projects, BTW).
A final interesting thought: I believe that the sharp distinction between NetBSD, OpenBSD, FreeBSD, and DragonflyBSD is a result of the lack of distributed branching and easy merging. The personality issues and different goals are there, of course, but I believe these would have been "overrun" with the ability to easily move changes back and forth. The single issue that has resulted in the "deep" splits is the effort involved in moving changes.
Eivind.
-
Re:BitKep'R
Don't tell me, tell these guys:
Bitkeeper
Perforce
Clearcase
(Look at the titles)
Probably want to send and email over to the guys on comp.software.config-mgmt, I'm sure they are going to want to hear they've been using the wrong acronym all this time. -
Win32 on a new machine at a new job
- GNU emacs for win32
- Perl for Win32
- Core GNU unix utils for Win32 (sorry, cygwin is just too much hard work to keep it all working)
- Visual Studio v.whatever for VB, C++ etc. (whatever "the job" is)
- WinZip to unpack stuff above, and then to regularly curse how crap it is in so many ways
- All the SysInternals stuff, RegMon, FileMon, etc.
- Personal copy of Perforce to keep track of stuff I write from day one.
The rest is just decoration and glitter (and that includes Office, Acrobat [spit] etc.), or I can write it myself given the above.
Does copying over my bookmarks, docs, command line utils etc count ??
-
Re:PerforceI believe you're confusing two separate issues. The agreement relating to "no production use" is the evaluation, where you can have them give you a limited-time license key for n users to evaluate the software. The 2-user, 2-workspace configuration is gratis:
You can download and use any Perforce software product free. All Perforce software you download is fully functional, with the exception of the Perforce Server, which allows only two users and two client workspaces when used without a license.
That is from the page you referenced. Also, from http://www.perforce.com/perforce/loadprog.html,You may use software downloaded from Perforce for any purpose you want and for as long as you like. The Perforce Server supports only two users and two client workspaces unless used with a Perforce License.
As far as I have been able to tell, there is no restriction against using the 2-user version in production. If you have an example of such a restiction, please post it. -
CVSNT + WinCVS or Perforce
-
Perforce (or any other Version Control system)
I find this to be the ideal solution for keeping filesystems synchronized across slow links.
From my experience, Perforce has the best use of bandwidth and also the most intelligence when it comes to rearranging directory structures and resolving conflicts.
Unfortunately it's only free for up to two users - so it may be useless for your needs. -
Perforce (or any other Version Control system)
I find this to be the ideal solution for keeping filesystems synchronized across slow links.
From my experience, Perforce has the best use of bandwidth and also the most intelligence when it comes to rearranging directory structures and resolving conflicts.
Unfortunately it's only free for up to two users - so it may be useless for your needs. -
Re:I'll believe it when I see it.
Second point: The odds of getting one's hands on the full source to NT4/2K are slim to none--even most Microsoft folks couldn't do that. The code is probably scattered across multiple servers in Redmond, for starters, and you'd only be given access to the parts you needed to work with.
Microsoft gave a talk at usenix: Windows A Software Engineering Odyssey
This slide indicates the full source is 50gb and took a week to setup and 2 hours a day to update.
That implies to me that people could have the whole source but it would huge.
Slide 24 talks about their new perforce based system that only takes 3 hours to setup and 5 minutes to update.
-
Re:CVS, eh?
More good news: Perforce is free-as-in-beer for use in developing open source projects.
That sounded good, so I read their Open Source FAQ. After seeing the following ...
The End User License Agreement for Open Source Software Development requires that Perforce Software be granted read-only access to the Perforce server. What do I need to do to comply?
We will assume, unless otherwise notified, that we will be able to access your server at the server's licensed IP address, port 1666, using the Perforce user name "anonymous". When this is not true, you should include information for contacting your server when you fill out the license agreement.
... I immediately decided to stick with Unison.
While I embrace Open Source, I really don't feel comfortable with anyone at Perforce being able to "browse" through my home directory. Some of my software projects are open source, however my personal life and the contents of my home directory are not. -
Re:CVS, eh?
I agree that Perforce is awesome. But here's something you may not know -- Perforce is completely free for the kind of thing this article is talking about doing.
Specifically, Perforce is available for download here. Without a license, it only supports two users and two clientspecs... not enough to manage a project shared among developers, but wonderful for managing your code in home projects. More good news: Perforce is free-as-in-beer for use in developing open source projects.
(This isn't meant as a holy war... I know that many of you might think that source control package Foo is better than Perforce. You may be right. I'm just pointing out some Perforce licensing facts for those who like Perforce.) -
Re:CVS, eh?
I agree that Perforce is awesome. But here's something you may not know -- Perforce is completely free for the kind of thing this article is talking about doing.
Specifically, Perforce is available for download here. Without a license, it only supports two users and two clientspecs... not enough to manage a project shared among developers, but wonderful for managing your code in home projects. More good news: Perforce is free-as-in-beer for use in developing open source projects.
(This isn't meant as a holy war... I know that many of you might think that source control package Foo is better than Perforce. You may be right. I'm just pointing out some Perforce licensing facts for those who like Perforce.) -
Re:I wouldn't suggest itClearCase and ClearQuest do version control and defect and change management. You might try Seapine's TestTrack Pro and Surround SCM. There's also Perforce for source control as well as various CVS clients.
One of the things I'm continually amused by--the people who say "I use this program, it's not available for the Mac, so there's no software for the Mac." But if you look around, you'll find that you can do the same thing with some other software. And frankly, if IBM/Rational loses enough sales because they don't have a Mac version, they'll build one.
For example, a few years ago, there was no QuickBooks for Macintosh. So obviously, you couldn't run your business on a Mac without accounting software. The fact that MYOB/AccountEdge & BigBusiness existed was beside the point--if they didn't hear the word "QuickBooks", they said "There's no accounting software."
-
Re:unbelievable.
Probably the single biggest improvement is something that we call a "mod" and I think BitKeeper calls a "changeset". It's a collection of files that you check in all at once and can track as a single entity.
Perforce has had this for many years. (It too is not free, but it's not that huge an improvement; I am not familiar with the state-of-the-art in free software, but I would imagine at least one system has atomic checkins.)
-
Re:I don't get it.
-
Re:A-A-P
Yeah: I'd have thought that The A-A-P Project or JAM
Perforce.com, Jam
would be the ticket...Has anybody compared 'em?
-
Re:Quotes from the article
In particular, their Windows development tools and office suite still completely outclass the OS equivalents.
I have to call bullshit on this one. Microsoft development tools (i.e., those sold by Microsoft) are, contrary to popular religion, not the cat's hind end. I'm a developer and I've found that Visual Studio .NET and Source Safe and nearly every other MS "product" I try is the most ridiculously bloated and cumbersome tool imaginable. I really can't understand how people use them to do real work.
The GNU/OpenSource/POSIX LIDE or Loosely Integrated Development Environment (e.g., autoconf, automake, make, gcc, etc.), however, is standardized for nearly every platform now (yes, including Mac OS X and Windows) and Just Makes Sense(tm). By this I mean these are good, simple and extremely flexible tools which are configurable to work the way you do (not work you the way its developers want to). If I see another god-damned fscking "IDE" which "tightly" (meaning inflexibly) integrates to a broken source control system like CVS or VSS and doesn't easily allow me to drop-in my own replacement like Subversion or Perforce, I'm going to vomit.
By the way, these are also the same tools which are used to teach computer science and programming courses in Universities across the world (at least for now). Graduate with a BS in computer Science and chances are, unless you came from a crack-pot or sell-out operation, you are already trained in their use and can develop software for nearly every popular platform on the planet.
As far as office products are concerned, I'm not a publisher, but I do write a fair amount of documentation and give a number of presentations annually, and I find that OpenOffice 1.0.1 (distributed with RedHat 8.0) is more than sufficient for my needs and is being improved at an amazing rate. In fact, our entire office (business and technical staff alike) uses it without complaint. -
Re:There are many... use google?
FWIW, perforce has whitepapers here that compare Perforce against VSS, ClearCase, CVS, and PVCS. Obviously, they are slanted, but they might be worth looking at anyway.
-
Re:CVS *does* "bite big donkey dick"
Fortunately, I don't have to deal with that crap anymore, as I'm now using Perforce. It's certainly not perfect, but at least it doesn't bite big donkey dick.
Perforce is actually a pretty decent product. Personally, I prefer the command line interface, but there are plenty of third-party GUI tools which emulate the P4 windoze client.
One thing Perforce does seem to have difficulty with (and I'm not sure if this is just the result of user error) is a TRUNK (i.e., HEAD) = PRODUCTION development strategy.
In other words, your mainline sources always reflect what is (or is about to be) in production (that is, assuming you only release from one branch, like a website or something). To start a new project you branch from the mainline (or another branched project) and when you're ready for alpha testing, you release checkin restrictions on the mainline, merge your changes for the project back into the mainline, fix conflicts, start testing and make any repairs to the mainline. Then when, you're ready to release, you freeze the mainline again, tag it and push it to production.
I know you're probably asking, "why the hell would you do that?" The answer is that, theoretically if you've got one product you're releasing, but like to work on several different versions concurrently, then this branching strategy makes sense.
The problem with Perforce (and, again, this could be because of user error) is that it seems to generate unnecessary conflicts when merging back into the mainline. I don't know if this has been made easier in recent releases, but you may wish to make branching and merging a high priority test when evaluating any VCS software. -
Free-as-in-beer for open source work
Perforce is free-as-in-beer for the development of software that is licensed exclusively under an Open Source license.
http://www.perforce.com/perforce/price.html -
Re:Two non-obvious things I'd suggestCVS? They're a Microsoft shop.
Nothing but M$ products for them.
That looks like a nice, standard mis-informed Slashdot post to me.
For Windows, there is CVS NT which works great. Then you can use Igloo for IDE integration. Or the even cooler Tortoise CVS for explorer integration (an easier to use source control tool I have yet to find).
OR, there is always Subversion if you don't want CVS. Subversion also has a Tortoise port.
Or, back in the closed source world, Perforce and I'm sure a handful of others.
-
"Web Content Management" from Perforce as well
Perforce has a link on their website for a paper entitled Web Content Management with Perforcefrom a conference in 1999. This is slightly later than the patent filing date, but no doubt the product info was public before then since they have been in existence since 1996.
-
Better one
-
Not quite the same - close.. but interesting...
If anyone use Perforce (source code control) on Windows - the P4Win GUI client doesn't give you a command line, but it will show in a seperate pane all the "raw" commands it uses to drive the GUI, so if you want to know how to do something on the command line you simply do it in the GUI and then look at the log of how the program did it - very useful.
Similarly "Record a macro" in programs like Excel and Word will generate a (VBA) script of the function calls required to generate an action - again very useful for when you want to see how to do something programatically.
Finally, I always like the way that Emacs will intelligently use the status bar to report items like "you've been typing a long command but you've paused at this point", or some commands will display extra info (like - you could have done that with a keyboard shortcut), but these messages don't get in the way of what you're doing (like a modal message-box does). Oh, and recording actions to Lisp macros (cf Excel and VBA) is very useful too.
--
T -
Re:Atomic checkins are a must...
[atomic checkins are] super-handy, and brings it up to par with Perforce
while perforce is not open source, they still grant a free license for 2 clients. this is enough for toying with my g4 and ibook. additionally, all the manuals are online, and so are ports for many different systems. there are plugins for many ides, and a web-gui based on html-forms. what i like the most is the relative ease of use of all parts involved.
until someone comes up with a stable and usable open-source tool, perforce might serve any home-user's needs.
-
Re:Atomic checkins are a must...
[atomic checkins are] super-handy, and brings it up to par with Perforce
while perforce is not open source, they still grant a free license for 2 clients. this is enough for toying with my g4 and ibook. additionally, all the manuals are online, and so are ports for many different systems. there are plugins for many ides, and a web-gui based on html-forms. what i like the most is the relative ease of use of all parts involved.
until someone comes up with a stable and usable open-source tool, perforce might serve any home-user's needs.
-
Re:Atomic checkins are a must...
I'm not sure where you got that idea. There is no connection, whatsoever, to my knowledge. Here is a comparison page provided by the Perforce folks: comparison chart.