Team Foundation Server – Reutilizar un workspace creado en otra máquina

Es sin duda uno de los mayores inconvenientes de TFS, una vez creas un workspace no puedes utilizarlo más que en la máquina donde lo creaste, aunque sea el mismo usuario, ya que queda asociado también al nombre del equipo, no solo al usuario.

Esto es un problema si cambias de ordenador o si simplemente, como fue mi caso, se cambia el nombre del equipo (tuvimos que cambiar de dominio y en el nuevo los nombres eran diferentes). Pese a que hagas copia de seguridad y tengas todos los archivos, no puedes reutilizar el workspace porque está asociado a otra máquina y es en el workspace donde se almacena la información de los archivos que tienes descargados, las versiones, archivos que tienes bloqueados, etc. Está bien que se guarde esta información en el servidor pero si no puedo utilizarla desde otra máquina no le veo mucha utilidad.

Me costó bastante encontrar como solucionarlo, y es que TFS trae un cliente en línea de comandos desde el que se pueden hacer hacer virguerías. En mi caso, que lo utilizamos desde Eclipse con el plugin de Microsoft (originariamente de Teamprise), no tengo instalado el cliente de Visual Studio, así que le pedí algunos archivos a uno de mis compañeros. Con estos será suficiente:

  • TF.exe
  • Microsoft.TeamFoundation.Client.dll
  • Microsoft.TeamFoundation.Common.dll
  • Microsoft.TeamFoundation.VersionControl.Client.dll
  • Microsoft.TeamFoundation.VersionControl.Common.dll

Se copian todos en una carpeta y, desde la línea de comandos en esa carpeta, ya podemos jugar. Aquí tenéis una buena lista de opciones del cliente en línea de comandos.

Primero le preguntamos por los workspaces asociados a nuestra nueva máquina:

C:tfs>tf workspaces -server:http://tfs.tudominio.com:8080/
No workspace matching *;osus on computer NOMBREEQUIPO found in Team Foundation Server http://tfs.tudominio.com:8080/.

Como veis nos dice que no hay ninguno. Ahora le pedimos que cambie nuestro workspace de la máquina vieja a la nueva. Lógicamente tendremos que conocer el nombre del workspace y el de la máquina antigua. Es importante tener en cuenta que hay que hacerlo obligatoriamente desde la máquina nueva que vamos a utilizar, no sirve hacerlo desde la de otro compañero ya que asocia automáticamente el workspace a la máquina donde se lanza el comando.

C:tfs>tf workspaces -login:posus@DOMINIO -server:http://tfs.tudominio.com:8080/ -updateComputerName:NOMBREMAQUINAVIEJA NOMBREWORKSPACE
Collection: http://tfs.tudominio.com:8080/
Workspace	Owner		Computer     	Comment
--------- 	----------	------------ 	---------------------------------------------
NOMBREWORKSPACE	osus		NOMBREEQUIPO

Para hacer el cambio te pedirá que te autentifiques con tus credenciales y, si todo ha ido bien, nos dirá que lo ha cambiado correctamente.

Si hacemos de nuevo la primera consulta:

C:tfs>tf workspaces -server:http://tfs.tudominio.com:8080/
Collection: http://tfs.tudominio.com:8080/
Workspace	Owner      Computer     Comment
---------	---------- ------------ ---------------------------------------------
NOMBREWORKSPACE osus       NOMBREEQUIPO

Ahora ya podemos utilizar nuestro workspace en el nuevo equipo. Recuerda, eso sí, que si cambias de máquina (no es sólo un cambio de nombre) deberás copiar los archivos que ya tenías en la misma ruta original, se mantendrá todo como en la otra máquina, incluidos los archivos que estabas modificando.

Un comentario en “Team Foundation Server – Reutilizar un workspace creado en otra máquina

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *