scripting - No se puede determinar el espacio de trabajo utilizando TF.exe
tfs team-build (3)
De los foros MSDN: Sr. Hofman
http://social.msdn.microsoft.com/Forums/en/tfsbuild/thread/82b13bfd-5fd7-45f7-a681-d84c9ea52765
Cambie la carpeta de trabajo de tf get a una carpeta asignada por el área de trabajo.
Ejecute el comando desde una carpeta donde se asigna el área de trabajo
(Por ejemplo si lo haces desde consola:
cd c:/sources/myteamproject
tf get ...
)
Clave: cambie la carpeta de trabajo de tf get a una carpeta asignada por el área de trabajo.
Uso el comando pushd C: / Temp / Team2 en mi archivo de script.
Actualización : Comentarios de Ryan Cromwell
Puede crear y asignar un espacio de trabajo en su script con lo siguiente. El segundo comando funciona, porque el primer espacio de trabajo se crea en la carpeta ''blah''. Los ''.'' en el segundo comando está diciendo el mapa ''$ /'' al directorio actual (blah). Puede cambiarlo para que sea una carpeta o subcarpeta con nombre si lo desea.
Crear un nuevo espacio de trabajo
C:/projects/blah>tf workspace /new blah /noprompt /collection:http://<host>:<port>/tfs/<collection> /login:<username>,<pwd>
Mapear una ruta en ese espacio de trabajo
C:/projects/blah>tf workfold /map $/ . /login:<username>,<pwd>
Tengo este script (archivo bat)
tf workspaces /s:http://project02:8080
tf workspace /s:http://project02:8080 Team.descomp;MyDomain/Myuser
tf workfold /workspace:Team.descomp
tf get $/Team/Main/Projects /recursive /force /noprompt
Recibo este error: No se puede determinar el área de trabajo., Cuando intento ejecutar tf get.
La salida de la consola es similar a la siguiente:
Servidor: proyecto02
Espacio de trabajo: DESCOMP
Propietario: MyUser
Computadora: DESCOMP
Espacio de trabajo: Team.descomp
Propietario: MyUser
Computadora: DESCOMP
...
Espacio de trabajo: Team.descomp (MyUser)
Servidor: http://project02:8080/
$ / Equipo: C: / Temp / Team2
...
No se puede determinar el espacio de trabajo.
Nota, por $ / Equipo (proyecto de equipo) tiene un mapa en dos máquinas: MyUser y Descomp
Área de trabajo: Propietario del equipo: Computadora MyUser: MyUser
Espacio de trabajo: Team.descomp Propietario: MiUser Computadora: DESCOMP
¿Alguna sugerencia?
Esto extiende la respuesta de @Kiquenet. No fue fácil hacerlo en los comentarios :(
Puede crear y asignar un espacio de trabajo en su script con lo siguiente. El segundo comando funciona, porque el primer espacio de trabajo se crea en la carpeta ''blah''. Los ''.'' en el segundo comando está diciendo el mapa ''$ /'' al directorio actual (blah). Puede cambiarlo para que sea una carpeta o subcarpeta con nombre si lo desea.
Crear un nuevo espacio de trabajo
C:/projects/blah>tf workspace /new blah /noprompt /collection:http://<host>:<port>/tfs/<collection> /login:<username>,<pwd>
Mapear una ruta en ese espacio de trabajo
C:/projects/blah>tf workfold /map $/ . /login:<username>,<pwd>
Tuve este problema en Team City ejecutando un archivo ps1 con lo siguiente:
tf resolve FND.sql /auto:KeepYours
tf checkout FND.sql /noprompt
tf checkin FND.sql /noprompt
cuando lo ejecuté en una ventana de PS, funcionó bien, pero cuando fue ejecutado por Team City, obtuve la siguiente respuesta para cada llamada tf:
Unable to determine the workspace. ...
Intentando obtener más información sobre lo que estaba pasando, inserté la siguiente declaración antes de la primera llamada a la tf:
tf workfold
cuando ejecuté Team City la próxima vez, la carpeta de trabajo tf mostró el mapeo que no se reconoció previamente, y los comandos tf existentes comenzaron a funcionar.
Todavía funcionó cuando saqué el comando tf workflold.
No lo entiendo, pero quizás esto funcione para otras personas con este problema.
Anteriormente había intentado varias recomendaciones de este y otros sitios web sin éxito.
Espero que esto ayude a alguien.