Pregunta

Alguien dejó la organización pero antes de irse, bloqueó todos los archivos por una razón desconocida.

¿Cómo desbloquearlos a todos para que los otros desarrolladores puedan trabajar?

¿Fue útil?

Solución

Para la siguiente operación, deberá ser un administrador de proyecto para el proyecto en el que desea deshacer el registro o un Administrador de Team Foundation si desea hacer esto en todos los proyectos.

Si aún tiene el nombre de usuario de la persona, simplemente puede hacer algo como esto:

  • Abra el símbolo del sistema de Visual Studio (Inicio - > Programas - > Microsoft Visual Studio 200X - > Visual Studio Tools - > Visual Studio 200X Símbolo del sistema)
  • Ejecute el siguiente comando:
  

tf lock / lock: ninguno   / workspace: WorkspaceName; USERNAME   / recursive $ /

Para obtener la lista de espacios de trabajo para un usuario, simplemente ejecute el siguiente comando desde el mismo indicador:

  

espacios de trabajo / propietario de tf: nombre de usuario

Para más comandos, marque tf /?

Otros consejos

Si el desarrollador ha abandonado la organización, lo mejor que puede hacer es eliminar sus espacios de trabajo. Esto desbloqueará los archivos por usted, pero también liberará algunos recursos en el servidor.

Vea la siguiente publicación de blog que hice sobre el tema cuando me ocurrió hace unos años.

http://www.woodwardweb.com/vsts/unlocking_files.html

Puede eliminar el espacio de trabajo utilizando la línea de comando (tf.exe) o puede utilizar el excelente TFS Sidekicks de Attrice.

Esta fue la única forma en que resolví esto, que implicaba eliminar el espacio de trabajo del usuario:

http://2toad.com/Blog/ 2012/1/27 / how-to-manage-tfs-workspaces

Si el mensaje de error dice " El elemento $ / ... está bloqueado para que algún usuario lo bloquee: 1 en el espacio de trabajo someMachine123. " entonces uso el comando:

tf workspace /delete /server:http://machinename:8080/tfs/DefaultCollection someMachine123;someUser:1

Solo hay un espacio entre la URL de la colección y someMachine123;someUser:1.

Tenga en cuenta que presté atención al hecho de que el mensaje de error mencionaba al usuario como someUser:1, así que lo imité en el comando. No fue suficiente ejecutar el comando solo con someUser. No estoy seguro de qué se trata: 1, pero es importante imitar el mensaje de error.

Tenga en cuenta que el servidor debe ser la ruta de recopilación totalmente calificada, que puede encontrar yendo a la Consola de administración de Team Foundation Server - > Nivel de aplicación - > Colecciones de proyectos de equipo, el panel inferior mostrará una URL para la colección que se selecciona en el panel superior.

También tuve un problema porque accidentalmente intenté usar el plural workspaces en lugar de solo workspace porque hay un comando similar que es plural.

primero debe tener el derecho de hacer esto. Si tiene eso, lo más fácil es usar los compinches TFS de attrice http://www.attrice.info/ cm / tfs /

Necesitaba agregar / collection: collectionURL, de lo contrario no se podría encontrar el espacio de trabajo:

  • Elemento de la lista

tf loc / lock: none / workspace: WorkspaceName; UserName / collection: collectionURL

Aquí una explicación del uso de permisos TFS.

  

Tener el " Desbloquear los cambios de otros usuarios "   se requiere permiso para Permitir   eliminar un bloqueo retenido por otro usuario.

Haga que un administrador del sistema restablezca la contraseña de ese usuario, inicie sesión como ese usuario, desbloquee todos los archivos ...

Creo que esta es la solución a casi todas las preguntas de 'alguien que ya no está en esta organización' ...

Es mejor eliminar el espacio de trabajo de ese usuario del servidor. ejemplo

tf workspace / delete / server: your_tfs_server workspace; username

A veces, esto está enmascarando un problema diferente con una aplicación completamente diferente que está bloqueada por otro usuario, pero ni siquiera puede crear una Nueva Carpeta para el nuevo proyecto en el que desea fusionarse (el objetivo no permitirá la creación e indicará incorrectamente que alguien tiene un archivo bloqueado a su nombre) pero luego profundizas más y otro proyecto es el culpable.

Entonces, un proyecto completamente diferente puede ser el problema de tener archivos bloqueados por otra persona.

Método que funcionó para mí, mi cuenta tiene permiso de administrador en TFS y proyecto:

En Visual Studio 2015:

  1. Ir a Team Explorer
  2. Haga clic derecho en su solución y elija Abrir en control de código fuente exporer
  3. En el lado izquierdo, haga clic derecho en su solución
  4. Elija Avanzado
  5. Elija Bloquear ...
  6. En el lado izquierdo, haga clic derecho en su solución
  7. Elija Avanzado
  8. Elija Desbloquear (ahora puede elegir desbloquear)

En este momento, cada desarrollador puede confirmar fácilmente sus cambios :)

Use esta solución como último recurso .

I & # 8217; m usando TFS 2012. Fui a la base de datos TFS y ejecuté las siguientes consultas. ¡Y funcionó! Por supuesto, tenga mucho cuidado al jugar con la base de datos, realizar copias de seguridad, etc.

La base de datos se llama Tfs _ < < your_TFS_collection_name > > . Ignore la base de datos Tfs_Configuration MSSQL. No estoy seguro, pero si no tiene una Tfs _ & Lt; & Lt; your_TFS_collection_name & Gt; & Gt; , la configuración puede estar en la < em> Tfs_DefaultCollection base de datos. Los bloqueos se almacenan en tbl_PendingChange.LockStatus .

/*Find correct row*/
SELECT LockStatus, PendingChangeId, *
FROM tbl_PendingChange
WHERE TargetServerItem like '%<<fileName>>%'

/*Set lock status to NULL (mine was set to 2 initially)*/
UPDATE tbl_PendingChange SET LockStatus = NULL WHERE
TargetServerItem like '%<fileName>>%'
AND PendingChangeId = <<PendingChangeId from above>>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top