On 11/22/2011 02:26 AM, Daniel Shahaf wrote: > On Tuesday, November 22, 2011 12:23 AM, "Johan Corveleyn" <jcor...@gmail.com> > wrote: >> Hi all, >> >> I'm wondering if it would be feasible to (make it possible to) >> alter/add copyfrom information in an SVN repository. And if so, would >> this be a desirable feature? > > It's not feasible for FSFS without a format bump and a new layer of > code. I believe trivial for BDB though.
I'm not convinced that it's "trivial". The filesystem backends expect that a node which was copied has the same node-id (a portion of the large node-revision-id) as its copy source, and that a file added *without* history gets a new unique node-id. These node-ids are used for ancestry checks. To do a post-facto copy operation means, at a minimum, reassigning the node-revision-ids for the copied item and all of its successors, patching up the nodes themselves to point to the right successors, patching up their parent directories to point to the new node-revision-ids, etc. Further, a copy event within the repository changes the way that node-revision-id's are incremented when cloned (that is, when new versions of the items are created), which is somewhat tricky for clone children of copied directories. Adherence to that algorithm is (again) a critical part of the historical accounting and traceability within the FS logic. I'm not saying that we shouldn't seek to add this rectification mechanism. I merely want folks to understand the likely scope of the change. -- C. Michael Pilato <cmpil...@collab.net> CollabNet <> www.collab.net <> Distributed Development On Demand
signature.asc
Description: OpenPGP digital signature