Acabo de pasar los últimos 6 meses migrando 100 o más repositorios de VSS a TFS, así que siento tu dolor! Solo he hecho esto en TFS 2008 pero no hay ninguna razón por la que no debería funcionar en 2010.
Me gustaría tratar una fusión sin base como último recurso, ya que estarás atrapado haciendo fusiones desde la línea de comandos.
El truco consiste en establecer la relación entre las ramas antes de importar el código.
(Voy a usar un simple rama dev solo como ejemplo, pero usted debería ser capaz de utilizar la misma teoría, independientemente del número de ramas)
Crear un nuevo proyecto de equipo, crear un " tronco "luego ramificar a" dev ". Ahora debería tener dos ramas vacías.
Importe su código en "trunk" y "dev".
Combinar de "tronco" a "dev", es casi seguro que tendrá un montón de conflictos, TFS debe ser lo suficientemente inteligente como para ignorar los archivos y carpetas que son los mismos, pero no siempre. Usted tendrá que decidir cuál de los archivos en conflicto desea mantener (por lo general los de la rama "dev" pero es probable que desee tener a alguien que entienda el código a la mano para tomar la decisión)
Ahora deberías tener 2 ramas llenas de código que tienen una relación.
Si tiene varias ramas "dev", entonces creo que siempre debe fusionarse primero entre "troncal" y "dev", esto configura la relación y le da la opción de mantener la versión del código en "dev" ya que esto es probablemente más reciente que la versión en "trunk"
En su caso específico, seguiría lo anterior pero en lugar de importar sus archivos (paso 2) desde el sistema de archivos, podría ramificar el código de su "viejo "proyecto de equipo para la nueva es decir
rama $/oldTeamProject/Devbranch
a $/NewTeamProject/DevBranch
y $/oldTeamProject/Trunk
a $/NewTeamProject/Trunk
luego se funden en $/NewTeamProject/Trunk
a $/NewTeamProject/DevBranch
que he hecho esto un par de veces en TFS 2008 y funciona como un encanto (excepto el dolor de hacer la primera resolución de conflictos). Una vez dicho esto, recomendaría hacer una migración de "prueba", solo para asegurarme de haber cubierto todos los ángulos.Si esto funciona bien, entonces puede mantener el resultado; si no, debería haber aprendido algunas lecciones para la migración real :-)
Si ha cambiado el nombre de cualquier archivo o carpeta, TFS no sabrá establecer la relación y obtendrá duplicación en su rama "dev" después de la fusión. Tendrá el mismo problema si realiza una fusión sin base en el nivel de la carpeta. No hay una forma fácil de evitar esto, me temo. solo tiene que estar atento a todo lo que parezca slike y haya sido renombrado y resolverlo manualmente después de la fusión.
Estamos a punto de actualizar a TFS 2010 y debido a problemas con la base de datos en nuestra instalación de 2008, hemos decidido instalar una copia nueva, para evitar arrastrar potenciales bombas de tiempo esperando para estallar, entonces tendremos la el mismo problema. Esperando ansiosamente cualquier buena respuesta en este caso. –