I've just changed jobs. My previous employer uses Subversion, my new employer uses Perforce.
Are there any resources out there that'll help me, as a user, change my mental model from a Subversion one to a Perforce one? What are the analogs to common SVN commands? Which concepts are implemented differently?
I'm not particularly interested in the pros and cons of Perforce vs Subversion - the decision's been made. There are plenty of other questions on S.O. covering that. I'd like to know what mental readjustment I'll have to make (or not).
Perforce and Subversion are quite similar, they both feature atomic commit of groups of files, and path-based branching.
Perforce has:
a) Pending changesets - you can group files that you are editing into groups and manipulate the groups.
b) Client-Specs - you can map the repository to your local work-space in quite complicated schemes.
c) No external - so you can't map the same part of the repository to multiple locations in your work-space, or map other repositories to sub-dirs in your work-space.
d) Merge-tracking, which is a new feature for Subversion.
e) Strong server connections: You have to tell the server before editing a file, and the server uses this information to keep a good idea of your local work-space state, which makes updates faster.
A few things come to mind (I have used perforce four years ago - things may have changed).
This blog post may help you make the transition.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With