Prev | Current Page 442 | Next

Brad Ediger

"Advanced Rails"


??? Subversion supports constant-time branching using copy-on-write semantics for
copies. Branches and tags are simply directories; they are not separate objects as
in CVS.
??? Directories are tracked independently of the files they contain. Directories and
files can be moved while retaining their version history.
??? Symbolic links can be stored in the repository and versioned as links.
Version Control | 299
Subversion provides the best fit for many developers, especially in the open source
world. Many projects have migrated from CVS to Subversion over the past few years.
Subversion is successful in a large part because it strikes a good balance between features
and ease of use.
One drawback of Subversion is that it can be difficult to build the server from source
because of its dependencies. It is built on top of APR (the Apache Portable Runtime),
a portability layer for network applications. Although the basic dependencies
are included for a svnserve installation, you may run into difficulty if you want to use
Apache as a Subversion server. However, once you have the dependencies in order,
building the server is straightforward.
Decentralized Version Control
Centralized version control has some drawbacks, especially when working in larger
teams. The central server and repository can become a bottleneck, especially when
dealing with many developers, as in large open source projects.


Pages:
430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454