he creado un archivo por lotes rápido, pero es necesario tener herramientas de la fundación del equipo de alimentación (tfpt.exe) en su camino y para (un comando de bucle de línea de comandos)
Visual Studio línea de comandos a la carpeta deseada git y ejecuta lo siguiente.
git log --pretty="'%%H',%%ci - %%s" --reverse > commits
tf workspace temp /new /s:http://{TfsInstance} /i
tf workfold /map %2 . /workspace:temp
FOR /F "tokens=1* delims=','" %%a IN (commits) DO git checkout %%a && tfpt online /recursive /exclude:.git*,commits,*.obj,*.exe,_ReSharper*,obj,debug,*.user,*.suo,Bin /adds /deletes /i && tf checkin /author:"{AuthorName}" /comment:"%%b" /i
tf workspace temp /delete /i
- En primer lugar se crea un archivo de confirmaciones con toda la información comprometerse en orden inverso (la más antigua primero).
- Entonces se crea un espacio de trabajo de Team Foundation ... (asegúrese de reemplazar
{TtsInstance}
con su TFS URI.
- Entonces se crea una carpeta temporal en el espacio de trabajo.
- A continuación, se realiza un bucle a través de cada línea en el archivo compromete , hace un checkout desde git, utiliza TFPT para verificar los archivos actuales (nuevamente asegúrese de reemplazar
{AuthorName}
con su nombre de autor) el comentario incluirá la marca de tiempo de git (desafortunadamente no puede cambiar el tiempo de registro sin cambiar el tiempo del servidor TFS y lo recomendaría en contra de eso) y el nombre del autor original.
T el suyo funcionó bien, pero las ramas no serán conservadas. No me tomé el tiempo para descubrir las ramificaciones ya que no era un factor lo suficientemente grande para el trabajo en ese momento.
¡Espero que esto le pueda ahorrar a alguien algo de tiempo!
¿Por qué demonios pasaría alguien de git a tfs? – hasen
Dos palabras: mejores herramientas. Sé que git tiene mucha exageración. Y el propio Sr. Torwalds escribió un lote de eso, pero interactuando con esta cosa CHUPA. Lo he usado durante 19 meses, lo presenté al equipo y no lo considero una bala de plata. Todas las herramientas de UI son cojas. La interfaz de la línea de comandos es detallada. Tengo el conjunto de scripts para respaldar mi flujo de trabajo, pero no es una solución de la que me enorgullezco. Más TFS es más que control de fuente. Es una solución compleja: rastreador de errores, sistema de compilación, integración VS, sitio SP para que ningún desarrollador pueda ver el proceso y enviar errores, etc. –
Extensiones de Git https://code.google.com/p/gitextensions/ está haciendo rápidamente El comentario de Artem es obsoleto. Una interfaz de usuario mucho más agradable que las UI incluidas. –