Branko Čibej wrote: > On 17.09.2013 12:46, Philip Martin wrote: >> I still don't understand. For a change like a text edit we always call >> make-mutable and it always gives a new id, either changing the >> revision-id or the copy-id. It's not clear to me that there should be >> a make-mutable call before a move. > > The result of a move needs a new revision-id. Of course you have to make > the node mutable before you modify it, and "move" modifies the node in > the sense that it creates a new node-revision.
But why does "move" need to create a new node-revision of the moved node itself (assuming the node isn't lazy-copied and isn't about to be modified). Why shouldn't it just create a new reference to the existing old node-revision? (Of course it needs to create a new node-rev of the parent directory because the parent's list of children changes.) - Julian