Udostępnij za pośrednictwem


Incremantal migration with VSSConverter

Why incremental migration?

Case 1: Migration takes a lot of time so I will migraqte a copy of my VSS repository and continue working on the original. after migration of copy I will migrate the delta between original and copy.

Case 2: Migration was stopped in the middle due to power outage/ i had to kill the migration in the middle. I need to migrate from that point onwards.

How it works.

Vssconverter adds Project mattings specified in settings file to checkin comments of destination projects specified in settings file. So if your settings file has entry

 <Projects>
  <Project From="$/proj1" To="$/TeamProject/proj1" /> 
 <Project From="$/proj2" To="$/TeamProject/proj2" />
</Projects>

then converter adds a comment to "ADD" action of "$/TeamProject/proj1" and "$/TeamProject/proj2" a checkin comment the above mappings

 -----------------------------------------VSSConverter Project Mappings. Do not modify.----------------------------------------
  <From="$/proj1" To="$/TeamProject/proj1" /> 
 <From="$/proj2" To="$/TeamProject/proj2" />

this is to check that a user accidently doesn't tries to migrate wrong repository or uses a wrong project mapings.. Vssconverter adds action time of every vss action in checkin comments. this time is used to determine time stamp of last action migrated. When next time converter is run if it finds project mappings in the checkin comment of destination projects  it assumes it to be incremental migration. then it checks for time stamp of last action migrated as stated above. Converter then migrates actions only after the last action migrated.