What they have in common:
- database backend
- atomic transactions
- fast branching and labeling operations
- work over TCP/IP
- client/server architecture
- multi-platform support
- strong command line tools (you can do everything you need on the command line)
- Perforce stores all information about developer's sandboxes and checkouts on the server . Perforce uses 'workspaces' (client specs) to track the relationship between checked-out code and its location on the server.
- With perforce you have to open a file for edit before you can work on it
- You can't move things around in the repository
- Supports multiple change lists (you can break up your commit into smaller chunks)
- Doesn't version directories
- Can checkout single file
- Limited integration with eclipse
- Merge tracking
- SVN Creates .svn directories in developer's sandboxes on checkout.
- You can move things (files, directories) around in the repository directly
- Branching and tagging are all 'copy' operations
- Subversion works offline
- Have to checkout a directory (not a single file)
- No easy way to split a commit into chunks with their own message
- Does version directories (implications for refactoring)
- Slick integration with eclipse
- Merge tracking (coming)
No comments:
Post a Comment