Ive been using perforce/p4 since 97. the last 8 years have been coupled with P4V and the eclipse plugins. My workflow is virtually identical to the much offered Git branching model [0]. Turn it -90deg with time left to right. Rename "develop" to "trunk". and think of "master" as being the release labels.
release and feature branches are created from the build label of the previous release needing special changes that can not just go into trunk or when we want to do a minimal patch-only release.
a developer makes local copy of the portions of the trunk they want/need.
the server knows who has what opened for edit/add which makes checkins fast. only the change must go in.
same for regular update of my local workspace.
we rarely have people editing the same exact file and if we do its a simple resolve in P4V during your commit or integrate activity.
So far, there are FEW benefits i see to using, or switching to, GIT:
LOCAL REPOSITORY - I have the whole repo for what i am working on so can work remote easier
LOCAL VERSIONING - I can create lightweight local branches that duplicate only what is required without resync of my local repo
POPULARITY - all the cook kids are using it so lots of ops utilities now are built expecting it to be there under the covers.
I can live without the LOCAL benefits. I have for 8 years.
I worry about the third - popularity vs. merit.
Where are the concrete comparisons showing all the features and functions of these solutions side by side and how they compare for a student, startup, or enterprise?
EDIT: found a newer perforce:git comparison on the perforce site[1]. The LOCAL REPO/VERSIONING is available with P4SANDBOXING.
I suppose modding me down is appropriate since i picked up on the POPULARITY aspect of the discussion and don't have any Hg experience. However, it seems these discussions just keep happening and there is no one-true-solution or approach. they each have merits and faults. it will be the careful consideration of these that leads to your own solution implementation. The popularity of GIT appears to be its strongest argument.
EDIT2: located a GIT-v-Perforce on SO.[2]
so many of the diffs, however, have been met with sandboxing
It really appears the strength is in popularity - everyone else uses GIT so you should too…
[0]: http://nvie.com/posts/a-successful-git-branching-model/
[1]: http://www.perforce.com/sites/default/files/pdf/perforce-git...
[2]: http://stackoverflow.com/questions/222782/git-vs-perforce-tw...