The vss action was a delete (followed by a destroy a few months later), and the svn action used was an "add" on 05/04/01 for both the directory and files.
Just let me know if you can think of anything that I should try or lookup. I'll keep looking in the meantime. Thanks, Jon On 5/11/06, Dirk <[EMAIL PROTECTED]> wrote:
Jon W schrieb: > So far the pin_handler branch is working relatively well for the > conversion, but I am hitting a problem. (The beta version didn't > handle several renames properly, so I had to use the pin_handler > branch.) Please keep in mind that a few exotic actions are not corrently working in this branch, esp. move, archive, restore The other ones need some further testing, whether they are all handled correctly. > The repository started around 1994, and on 05/04/2001 the following > happened that causes a import to only see the history from 05/04/2001 > (i.e. svn creation date). > > Note: $Project is the working directory for development.. > > $Source 05/04/01 12:44pm Renamed $Project to $Source > $Project 05/04/01 1:08pm Added > [ Shared files in $Source to $Project ] > $Source 05/04/01 2:06pm Deleted > > Between the 1:08pm ---> 2:08pm timeframe, files that were in $Source > (the previous $Project that was renamed) were shared into the newly > added $Project. In VSS, this allows the file to still see the history > since the real creation of each file. However, in the svn converted > repository, all files and directories are created on 05/04/01. It is > true that the directories were created on 05/04/01 in vss, but the > files were actually created much earlier due to the shares. subversion doesn't know the concept of sharing, so a share is mapped to a copy. Also subversion does not yet support nativ renames. A rename is actually implemented via a delete and a copy-from cycle. I'm not fully sure, but when displaying the history in subversion the log stops at a "copy-from" action. At least in in TortoiseSVN e.g. you can set an option, whether you want to follow a Copy or Rename action. In the pin-handler branch a renames and shares are mapped to the corresponding subversion actions everytime, only when we have a copy-from revision. This is due to the fact, that a copy-from action msut explicitly specify the correct path and revision to copy from. When renames are involved things can get dirty. The converter tries to track the state of the archive for all revisions. But if it can't find a copy-from revision (e.g. due to a destroyed parent folder) it falls back to an add action. Please note the difference of destroy and delete. A delete can be tracked since the files are still available. A destroy is lost. E.g. if you had destroyed the $Source folder you have destroyed the complete knowledge about the layout of your archive at times earlier than 05/04/01. We and vss have no way to restore the state of the archive earlier than 05/04/01 since we don't know that you ever had added a file to the archive. The fact, that the file has a history earlier than 05/04/01 is useless in this respect, since it hasn't had a parent. The file is dangling around. What we can do within the converter is that we map all these files into a lost+found directory. But here we have the problem of uniqueness of the name. E.g. what happens if you have two files with the same name that existed in two different projects which where destroyed? So actually your described szenario should work (if it really was a delete). Please try to lookup in your newly repository, what caused the file creation at 05/04/01. Was it really an add or was it a Copy-from? If it was really an add, we must figure out, why the converter didn't found the revision to copy from. This is a little complicated, since I don't know of a way to lookup this information from the dump files. All this is encoded in the internal maps of the converter. I currently have no idea how to find the reason for this, except dumping the internal maps at a specific revision. I will try to reproduce your described szenario in a test case. Then things will be easier. If you can use a perl debugger, it would be even better ;-) Best regards 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 Mailing list web interface (with searchable archives): http://dir.gmane.org/gmane.comp.version-control.subversion.vss2svn.user
_______________________________________________ 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 Mailing list web interface (with searchable archives): http://dir.gmane.org/gmane.comp.version-control.subversion.vss2svn.user