Prev | Current Page 121 | Next

Brad Ediger

"Advanced Rails"

To Subversion,
it is as if you wrote the code yourself??”it is versioned alongside the rest of
your application. This makes it very simple to patch the vendor branch for local use;
simply make modifications to the working copy and check them in.
When the time comes to update the vendor branch, piston update vendor/plugins/
deadlock_retry will fetch all changes from the remote repository and merge them in.
Any local modifications will be preserved in the merge. piston update can be called
without an argument; in that case, it will recursively update any Piston-controlled
directories under the current one.
Piston-controlled directories can be locked to their current version with piston lock
and unlocked with piston unlock. And for current svn:externals users, existing
directories managed with svn:externals can be converted to Piston all at once with
piston convert.
Piston is also good for managing edge Rails, along with any patches you may apply.
To import Rails from the edge, with all of the features of Piston:
$ piston import http://svn.rubyonrails.org/rails/trunk vendor/rails
Decentralized version control
Piston effectively creates one layer between a remote repository and the working copy.
Decentralized version control systems take this model to its logical conclusion: every
working copy is a repository, equally able to share changes with other repositories.


Pages:
109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133