Kenneth Porter schrieb:
On Friday, April 14, 2006 11:37 PM +0200 Dirk <[EMAIL PROTECTED]> wrote:

Just a quick question. Do you have a move action in your archive? This
would explain lot's of things

I don't really know. This is a client's archive and I'm exploring the feasibility of switching them to Subversion, so I don't know what the history is. I've had to use their repo long-distance and found it highly frustrating, so it would be nice if I could hand them a better solution. I haven't done much more than check out, check in, and unpin. I'm much more familiar with Subversion.


Just look into the "datachache.PhysicalAction.tmp.txt" and search for a MOVE action.

The problem with moves is, that due to the nature how VSS works, the move action is split into a MoveFrom and MoveTo action. Both actions record the "physical" file that is moved, and the path from where or to where it is moved. We decided not to trust the pathes recorded in VSS, since they are limited to 254 characters. So we have build our infrastructure in a way, that we can always regenerate the path from the physical name. The physical name is like a record id, that always uniquely and anambiguously identify an item. The path name can change, and only the latest name is preserved.

A lot of actions come in a split fashion, e.g. AddProject / CreateProject, AddFile / CreateFile, Branch / Rollback, ... The first one is always recorded in the parent, the second one in the child. For example the parent nows, that a file was branched, but it doesn't know at wich version. We have to look into the childs rollback activity.

All this twofold actions are merged in the MergeParentData step.

The Move Action is special in this case. It is twofold, but not between Parent and Child, but between old Parent and new Parent. The MergeParentData function currently does not detect these two actions as identical and therefore does not merge the information of the two actions.

Later in the ActionHandler I see two MOVE actions, and both are handled the same way, even if one of them was a MoveFrom and the other was a MoveTo.


Dirk

_______________________________________________
vss2svn-users mailing list
Project homepage:
http://www.pumacode.org/projects/vss2svn/
Subscribe/Unsubscribe/Admin:
http://lists.pumacode.org/mailman/listinfo/vss2svn-users-lists.pumacode.org

Reply via email to