Hola como están, les informo que apartir del día de hoy cambiamos la dirección de este blog a la siguinte liga.
Nuevo Blog
Los invito a participar en esta comunidad
miércoles, 11 de abril de 2007
martes, 3 de abril de 2007
Moviendo una solución de un Team Project a otro.
En esta semana he visto varias dudas al mover Archivos, Carpetas, de un Team Project a otro nuevo, una de ellas es si al pasar te conserva la versión del archivo o se pierde, muchos han contestado que esto no es posible, pero en fin, claro que esto es posible utilizando el comando "Move" este comando te permite copiar archivos, carpetas conservando el historial del mismo, solo hay que tener en cuenta que no te permite copiar varios archivos seleccionándolos, tendrías que mover desde el Top Level de tu folder o bien mover uno en uno tus archivos, cuando mueves de uno en uno es cuando se puede convertir muy laborioso dependiendo de la cantidad de archivos a pasar.
Nota: El comando "Move" también se puede utilizar para cambiar un archivo de carpeta dentro del mismo proyecto y de esta forma también nos conserva el historial.
Aquí les dejo algunas imágenes del comando "Move".
1.- Primero seleccionamos el archivo que vamos a mover con su respectivo historial
Nota: El comando "Move" también se puede utilizar para cambiar un archivo de carpeta dentro del mismo proyecto y de esta forma también nos conserva el historial.
Aquí les dejo algunas imágenes del comando "Move".
1.- Primero seleccionamos el archivo que vamos a mover con su respectivo historial
(Dar clic sobre la imagen para verla en grande)
2.- El siguiete paso es seleccionar la ruta de destino
(Dar clic sobre la imagen para verla en grande)
(Dar clic sobre la imagen para verla en grande)
Después de seleccionar la ruta aplicamos OK y nos moverá la carpeta a su nuevo destino respetando el historial que tenia en la carpeta de origen, y ya por finalizar damos un checkin a la carpeta o archivo en el nuevo proyecto.
-
Nota: Es importante considerar que una vez que hayamos movido la carpeta o archivo dejara de existir en la ruta donde se encontraba, quizás si queremos conservar el archivo o carpeta en el Team Project anterior o bien en la carpeta donde se encontraba (Estos si es que se realizo un movimiento dentro de un mismo proyecto) los más recomendable sería primero pasarlo y posteriormente hacer un "Branch" a la carpeta donde se encontraba el archivo o carpeta originalmente.
-
Espero esto les haya servido para clarificar el uso del comando "Move"
viernes, 23 de marzo de 2007
Team Foundation Server vs Visual SourceSafe
Hola aquí les dejo una comparativa entre Team Foundation Server y Visual SourceSafe, descripción acerca del manejo de código fuente con Team Foundation Server, como funciona en ambientes empresariales y soporte hacia la plataforma.
Es una herramienta considerada por muchas personas muy practica y fácil de usar, con frecuencia es la principal herramienta considerada para administración de la configuración usada por desarrolladores, pero desafortunadamente no es una herramienta que cumpla con todos los requerimientos de una herramienta de administración de la configuración y la desventaja más grande es que no está enfocada para equipos de desarrollo grandes si no para desarrolladores únicos o bien equipos de desarrollo muy pequeños, el método de almacenamiento es por medio de sistemas de archivos el cual es una gran desventaja, el control de versiones va ser dependiendo de cada punto de vista.
Es una aplicación basada en tres capas y su arquitectura está basada en Web Services, su almacenamiento es en SQL Server para lograr un control de versiones transaccional, cuenta con integraciones con otras herramientas de VSTS para la administración de automática de flujos de trabajos, implementación de conceptos avanzados de administración de la configuración basados en CMMI.Soporta migraciones desde Visual SourceSafe, Rational ClearCase.
Conjunto de características de una herramientas de control de código, por ejemplo todo lo que realiza VSS y mucho más.
Las nuevas características de control de código fuente:
Notas de Checkin y Notificaciones por medio de Ms Outlook
Soporte para Ambientes Empresariales: Desarrollo Distribuido
Diseñado para Internet
Clientes que se incluyen en Visual Studio 2005
Saludos!
Visual SourceSafe
Es una herramienta considerada por muchas personas muy practica y fácil de usar, con frecuencia es la principal herramienta considerada para administración de la configuración usada por desarrolladores, pero desafortunadamente no es una herramienta que cumpla con todos los requerimientos de una herramienta de administración de la configuración y la desventaja más grande es que no está enfocada para equipos de desarrollo grandes si no para desarrolladores únicos o bien equipos de desarrollo muy pequeños, el método de almacenamiento es por medio de sistemas de archivos el cual es una gran desventaja, el control de versiones va ser dependiendo de cada punto de vista.
Team Foundation Server
Control de código fuente
Es una aplicación basada en tres capas y su arquitectura está basada en Web Services, su almacenamiento es en SQL Server para lograr un control de versiones transaccional, cuenta con integraciones con otras herramientas de VSTS para la administración de automática de flujos de trabajos, implementación de conceptos avanzados de administración de la configuración basados en CMMI.Soporta migraciones desde Visual SourceSafe, Rational ClearCase.
Caracteristicas de TFS en el control de código fuente
Conjunto de características de una herramientas de control de código, por ejemplo todo lo que realiza VSS y mucho más.
Las nuevas características de control de código fuente:
- Checkin Integrado
- Desarrollo en Paralelo
- Checkins Atómicos
- Desarrollo Remoto
Además de contener integración con otras herramientas de Visual Studio Team System
Experiencia Integrada de Checkin
- Combina cambios, comentarios, elementos de trabajo, políticas y correo
- Captura valiosas relaciones entre datos
- Personalizable de acuerdo al proceso de la organización
Notas de Checkin y Notificaciones por medio de Ms Outlook
Soporte para Ambientes Empresariales: Desarrollo Distribuido
Diseñado para Internet
- Protocolos Web: HTTP & HTTPS
- Optimizado para escenarios de alta latencia, bajo ancho de banda
Nuevo Mecanismo de Cache
- Contenido de archivos en cache para la Red Local
- Ideal para oficinas Regionales
Proxy de Control de Versiones
Soporte hacia la Plataforma
Clientes que se incluyen en Visual Studio 2005
- Integración con el Solution Explorer de VS2005
- Source Control Explorer
- Línea de Comando
- MSSCCI Cliente para VS 03, VB 6, VC 6
Por parte de Socios
- Clientes para Unix, Linux y Mac OS
- Integración con Eclipse/Websphere
Saludos!
jueves, 8 de marzo de 2007
Team System con el nuevo addin de Outlook v1.0
Pues con la novedad que se acaba de liberar dias atras la conectividad de Team System con MsOutlook en versión 1.0 no comercial, para mas información y descarga del addin viste la siguiente liga.

lunes, 26 de febrero de 2007
Herramientas administrativas
Hay una serie de herramientas que nos son de mucha utilidad para la administración de nuestro Team Foundation Server y aplicaciones utiles para el mismo, a continuación les dejare el nombre de varias de ellas, espero les sean de mucha utilidad.
- TFS Administration Tool (Administración, permisos por TF456, requiere de WSS)
- Permissions Manager (Controlar permisos y editarlos )
- TFS Alert (Avisos sobre cambios en los proyectos)
- MsBuild SideKick (Editor de Builds )
- Team Foundation SideKick (Adminsitración total de TFS, LB, Permisos, Historial, Etc)
- TFS Bug Snapper (Herramienta para Testing)
- CodePlex (Algunas herramientas mas desde el sitio de CodePlex)
Espero puedan bajarlas y darles una revisada.
Varias son incluidas en los Power Toys para TFS.
lunes, 19 de febrero de 2007
Testing with Team System
Las herramientas que nos ofrece Microsoft para realizar pruebas.
Trabajando con Microsoft Visual Studio Team System nos proporcionan un modulo de pruebas llamada Team Tester con la cual nos permite ejecutar ciertas pruebas dentro del ambiente de desarrollo de Visual Studio 2005.
Como funcionan y su objetivo
Las pruebas de Team System son mediante una herramienta llamada Team Tester el cual es un modulo por separado de la herramienta de Team Foundation Server, la finalidad de esta herramienta es garantizar la funcionalidad e integridad del producto de software.
Tipos de pruebas
•Pruebas Unitarias
•Pruebas Genéricas
•Pruebas de Carga
•Pruebas Manuales
•Pruebas por Orden
•Pruebas Web
En este blog solo veremos a detalle las pruebas Unitarias y posteriormente estaré publicando cada una de ellas en orden.
Las Pruebas Unitarias
Una prueba unitaria es una prueba de programación codificada en Visual C# o Visual Basic, o codificada en Visual C++ y compilada con /clr:safe, y que utiliza los métodos de un proyecto.
Como funciona?
Una prueba unitaria llama a los métodos de una clase, pasando parámetros, y comprueba que el valor devuelto es el esperado. Las pruebas unitarias pueden escribirse manualmente o generarse automáticamente.
Las pruebas unitarias pueden ser de dos tipos:
• Pruebas de unidad controladas por datos
• Pruebas unitarias de ASP.Net
Iniciamos con las prubas controladas por datos
Una prueba unitaria controlada por datos es una prueba unitaria que se ejecuta repetidamente para cada fila de un origen de datos.
Este tipo de pruebas necesitamos establecer la conexión a la base de datos o bien la cadena de conexión para mejor entendimiento, se tiene que especificar también el proveedor de datos.
Generar pruebas de datos
Pruebas de ASP.Net
Las pruebas unitarias de ASP.NET
Sirven para probar métodos que forman parte de sitios o proyectos de ASP.NET. Por ejemplo, puede probar los métodos que constituyen la lógica empresarial de un proyecto de ASP.NET.
La diferencia entre una prueba unitaria de ASP.NET y otras pruebas unitarias está en el proceso mediante el que se ejecutan las pruebas.
Las pruebas de ASP.NET se ejecutan en el mismo entorno en que se ejecutará el código de producción.
Para esto, puede elegir IIS o el servidor de desarrollo de ASP.NET.
Cuando las pruebas se ejecutan en el proceso de trabajo de IIS, se tiene acceso a todo el entorno asociado al proceso, como el objeto Página.
Métodos para crear pruebas unitarias de ASP.Net
• Generar la prueba unitaria de ASP.NET desde un proyecto ASP.NET. Éste es el escenario más común.
• Configurar una prueba unitaria existente como una prueba unitaria de ASP.NET.
Generar una prueba unitaria de ASP.NET
Para generar una prueba unitaria de ASP.NET, primero cree un sitio Web ASP.NET dentro de su solución Visual Studio. A continuación, agregue una clase al proyecto de sitio Web y, por último, genere una prueba unitaria a partir de esa clase.
Tutorial de pruebas unitarias de ASP.Net
Les dejo aqui un ejercicio de una prueba unitaria, espero les sea util.
Creando nuestra primer prueba unitaria.mat
1.-Crear un nuevo proyecto Web de C# con el nombre de ExtendedMath
2.- Crear una Clase de C# dentro del proyecto, y reemplazar el nombre de Class1.css por Functions.cs
3.-Abrir Functions.cs e insertamos el siguiente código
Using system;
Namespace ExtendedMath
{
Public static class Functions
{
Public static int Fibonacci(int factor)
{
If (factor < 2)
Return (factor);
Int x=Fibonacci(--Factor);
Int y=Fibonacci(--Factor);
Return x + y;
}
}
}
Con esto quedamos listos para generar una prueba unitaria, donde verificaremos la implementación de fiboncci
4.- Agregamos a la solución “test Project” y llamaremos ExtendedMathTesting
5.- Agregamos una clase( no unit test) llamaremos a la clase FunctionsTest.cs
Validar el uso de las siguiente en la clase
Using ExtendedMath;
Using Microsoft.VisualStudio.TestTools.UnitTedting;
6.-Agregar a la clase FuntionsTest lo siguiente
Namespace ExtendedMath
{
[TestClass]
Public class FunctionsTest
{
}
}
7.-Agregamos el siguiente codigo dentro de la calse FunctionsTest
[TestMethod]
Public void FibonacciTest()
{
Const int Factor = 8;
Const int EXPECTED = 21;
Int actual = ExtendedMath.Funtions.Fibonacci(Factor);
Assert.AreEqual(Expected, actual)
}
8.- Agrega al proyecto de pruebas una prueba unitaria y modifica su nombre por FunctionTesting.cs
Notas: Al correr las pruebas podrás obtener el siguiente error con la referencia al Assert, lo único que tienes que hacer es modificar el valor de EXPECTED a 22, corres de nuevo tu prueba y te marcara ahora el siguiente error
Assert.AreEqual failed. EXPECTED: <22> , Actual: <21>
Trabajando con Microsoft Visual Studio Team System nos proporcionan un modulo de pruebas llamada Team Tester con la cual nos permite ejecutar ciertas pruebas dentro del ambiente de desarrollo de Visual Studio 2005.
Como funcionan y su objetivo
Las pruebas de Team System son mediante una herramienta llamada Team Tester el cual es un modulo por separado de la herramienta de Team Foundation Server, la finalidad de esta herramienta es garantizar la funcionalidad e integridad del producto de software.
Tipos de pruebas
•Pruebas Unitarias
•Pruebas Genéricas
•Pruebas de Carga
•Pruebas Manuales
•Pruebas por Orden
•Pruebas Web
En este blog solo veremos a detalle las pruebas Unitarias y posteriormente estaré publicando cada una de ellas en orden.
Las Pruebas Unitarias
Una prueba unitaria es una prueba de programación codificada en Visual C# o Visual Basic, o codificada en Visual C++ y compilada con /clr:safe, y que utiliza los métodos de un proyecto.
Como funciona?
Una prueba unitaria llama a los métodos de una clase, pasando parámetros, y comprueba que el valor devuelto es el esperado. Las pruebas unitarias pueden escribirse manualmente o generarse automáticamente.
Las pruebas unitarias pueden ser de dos tipos:
• Pruebas de unidad controladas por datos
• Pruebas unitarias de ASP.Net
Iniciamos con las prubas controladas por datos
Una prueba unitaria controlada por datos es una prueba unitaria que se ejecuta repetidamente para cada fila de un origen de datos.
Este tipo de pruebas necesitamos establecer la conexión a la base de datos o bien la cadena de conexión para mejor entendimiento, se tiene que especificar también el proveedor de datos.
Generar pruebas de datos
Pruebas de ASP.Net
Las pruebas unitarias de ASP.NET
Sirven para probar métodos que forman parte de sitios o proyectos de ASP.NET. Por ejemplo, puede probar los métodos que constituyen la lógica empresarial de un proyecto de ASP.NET.
La diferencia entre una prueba unitaria de ASP.NET y otras pruebas unitarias está en el proceso mediante el que se ejecutan las pruebas.
Las pruebas de ASP.NET se ejecutan en el mismo entorno en que se ejecutará el código de producción.
Para esto, puede elegir IIS o el servidor de desarrollo de ASP.NET.
Cuando las pruebas se ejecutan en el proceso de trabajo de IIS, se tiene acceso a todo el entorno asociado al proceso, como el objeto Página.
Métodos para crear pruebas unitarias de ASP.Net
• Generar la prueba unitaria de ASP.NET desde un proyecto ASP.NET. Éste es el escenario más común.
• Configurar una prueba unitaria existente como una prueba unitaria de ASP.NET.
Generar una prueba unitaria de ASP.NET
Para generar una prueba unitaria de ASP.NET, primero cree un sitio Web ASP.NET dentro de su solución Visual Studio. A continuación, agregue una clase al proyecto de sitio Web y, por último, genere una prueba unitaria a partir de esa clase.
Tutorial de pruebas unitarias de ASP.Net
Les dejo aqui un ejercicio de una prueba unitaria, espero les sea util.
Creando nuestra primer prueba unitaria.mat
1.-Crear un nuevo proyecto Web de C# con el nombre de ExtendedMath
2.- Crear una Clase de C# dentro del proyecto, y reemplazar el nombre de Class1.css por Functions.cs
3.-Abrir Functions.cs e insertamos el siguiente código
Using system;
Namespace ExtendedMath
{
Public static class Functions
{
Public static int Fibonacci(int factor)
{
If (factor < 2)
Return (factor);
Int x=Fibonacci(--Factor);
Int y=Fibonacci(--Factor);
Return x + y;
}
}
}
Con esto quedamos listos para generar una prueba unitaria, donde verificaremos la implementación de fiboncci
4.- Agregamos a la solución “test Project” y llamaremos ExtendedMathTesting
5.- Agregamos una clase( no unit test) llamaremos a la clase FunctionsTest.cs
Validar el uso de las siguiente en la clase
Using ExtendedMath;
Using Microsoft.VisualStudio.TestTools.UnitTedting;
6.-Agregar a la clase FuntionsTest lo siguiente
Namespace ExtendedMath
{
[TestClass]
Public class FunctionsTest
{
}
}
7.-Agregamos el siguiente codigo dentro de la calse FunctionsTest
[TestMethod]
Public void FibonacciTest()
{
Const int Factor = 8;
Const int EXPECTED = 21;
Int actual = ExtendedMath.Funtions.Fibonacci(Factor);
Assert.AreEqual(Expected, actual)
}
8.- Agrega al proyecto de pruebas una prueba unitaria y modifica su nombre por FunctionTesting.cs
Notas: Al correr las pruebas podrás obtener el siguiente error con la referencia al Assert, lo único que tienes que hacer es modificar el valor de EXPECTED a 22, corres de nuevo tu prueba y te marcara ahora el siguiente error
Assert.AreEqual failed. EXPECTED: <22> , Actual: <21>
martes, 13 de febrero de 2007
Certificación de Team Foundation Server
Examen 70-510
Pues aqui les dejo una nueva noticia, sale la primer certificación para Team Foundation Server, el examen es el examen es el 70-510, solo qeu sigue siendo aun Beta, el registro para el examen inicio desde el día 1 de febrero y el periodo del mismo sera de día 20 de febrero al 5 de marzo del año en curso.
Contenido del examen:
Pues aqui les dejo una nueva noticia, sale la primer certificación para Team Foundation Server, el examen es el examen es el 70-510, solo qeu sigue siendo aun Beta, el registro para el examen inicio desde el día 1 de febrero y el periodo del mismo sera de día 20 de febrero al 5 de marzo del año en curso.
Contenido del examen:
- Instalación y configuración de Microsoft Team Foundation Server (12%)
- Administración de instancias de Team Foundation Server instances y proyectos (25%)
- Administración del sistema de versionado de Team Foundation Server (19%)
- Administración de work item types y plantillas de proceso (19%)
- Administración de Team Builds (14%)
- Gestión de informes y documentación (11%)
Guía de preparación
http://www.microsoft.com/learning/exams/70-510.mspx
Post Orginal de Rob Caron
http://blogs.msdn.com/robcaron/archive/2007/02/02/1584258.aspx
martes, 30 de enero de 2007
Laboratorios Virtuales de Team System
Les dejo aquí la liga de los laboratorios virtuales de Team System, esto también les puede ser de mucha utilidad para entender mejor el funcionamiento del Team System, y sus distintas aplicaciones, los recomiendo ampliamente.
http://msdn.microsoft.com/virtuallabs/teamsystem/
Saludos y espero esto les sea de mucha utilidad!
http://msdn.microsoft.com/virtuallabs/teamsystem/
Saludos y espero esto les sea de mucha utilidad!
TFS virtual
Si estas buscando hacer alguna prueba de TFS, te recomiendo correr una maquina virtual que Microsoft ofrece de manera gratuita, esto si no quieres tratar con la version Trial del TFS de 180 días, tu puedes descargar la maquina virtual desde el sitio de MSDN subscriber.
Esta maquina virtual es de Team Foundation Server beta 3 en instalación single.
Liga:
http://msdn2.microsoft.com/en-us/subscriptions/default.aspx
Contenido:
http://blogs.msdn.com/buckh/archive/2005/11/22/495875.aspx
Espero esto les sea útil!
Esta maquina virtual es de Team Foundation Server beta 3 en instalación single.
Liga:
http://msdn2.microsoft.com/en-us/subscriptions/default.aspx
Contenido:
http://blogs.msdn.com/buckh/archive/2005/11/22/495875.aspx
Espero esto les sea útil!
jueves, 25 de enero de 2007
Visual Studio Team System level 200
Para la gente que se inicia en el mundo de Team System les recomiendo empezar con los webcast del VSTS 200, aqui les dejo la liga de donde pueden descargar los webcast del nivel 200, estan muy interesantes, también les dejo las maquinas virtuales del VSTS 200, espero les sea de gran utilidad.
Webcasts
Curso de VSTS 200 con VPC
Saludos!
Webcasts
Curso de VSTS 200 con VPC
Saludos!
lunes, 22 de enero de 2007
TfsDelete usado en proyectos corruptos
Hola como están, aquí les dejo mi experiencia con ciertos problemas al borrar proyectos corruptos.
Hace tiempo tuve un escenario muy complicado en su tiempo, realizamos una migración de la versión RC a la versión Refresh 3, y todo iba bien, todo parecía estar en orden, pero al primer proyecto que tratamos de generar vinieron los errores, nos desplegaba ciertos errores al generarlo y va, el proyecto nunca parecía en Team Explorer, esto se no hizo un poco extraño pero decidimos continuar con pruebas, revisamos el Log de el error del la creación del proyecto y nos dimos cuenta que el error estaba en nuestro Process Template, pues bien a modificarlo, y a prueba y error, generamos una serie de proyectos prueba, hasta que dimos con el problema, el problema que se nos presento después fue el borrar los proyecto que generamos de prueba, y bien aplicamos el proceso simple con el comando TfsDelete
TFSDeleteproject [/q] [/TeamFoundationServer:servername] [/force] project name
Recibimos una gran sorpresa, al correr el comando nos desplegaba que el proyecto no existía, y va la revisión de todo a fondo, en aquel tiempo no existía casi nada de información sobre el tema Team System, después de un buen tiempo revisando todo paso a paso la operación que realizaa el Team Foundation Server cuando genera un proyecto, entendimos lo que teniamos que hacer para eliminar esos poryectos corruptos, y bien les dejo aquí nuestros pasos.
1.- Entrar a la base de datos del Team Foundation server(SQL) posteriormente entrar a la base llamada TfsIntegration, después seleccionamos la tabla de "tbl_Projects" en esta veremos el nombre del proyecto, el id, y el estatus, cuando un proyecto se genera de forma corrupta no marcara como estatus "New" este estatus lo tenemos que cambiar por "WellFormed" manualmente y cerramos la tabla.
2.-La segundo cosa de hacer es conectarnos ahora a nuestro reporting services, dentro de este seleccionamos la carpeta de HOME, ya dentro de esta debemos de generar el sitio del proyecto manualmente .
3.-Ahora abrimos nuestro Visual Studio, y debemos de ver en Team Explorer que ya podemos agregar el proyecto creado corruptamente.
4.-Ahora dentro de Source Control damos un Get Lastest Version y nos debe de aparecer el proyecto dentro del Source Control Explorer.
5.- Ya como punto final y no por esto el más simple, aplicamos desde la ventana de comandos el comando TfsDelete y listo ahora si nos dejara eliminar el proyecto.
Espero esto les sea de utilidad!
Hace tiempo tuve un escenario muy complicado en su tiempo, realizamos una migración de la versión RC a la versión Refresh 3, y todo iba bien, todo parecía estar en orden, pero al primer proyecto que tratamos de generar vinieron los errores, nos desplegaba ciertos errores al generarlo y va, el proyecto nunca parecía en Team Explorer, esto se no hizo un poco extraño pero decidimos continuar con pruebas, revisamos el Log de el error del la creación del proyecto y nos dimos cuenta que el error estaba en nuestro Process Template, pues bien a modificarlo, y a prueba y error, generamos una serie de proyectos prueba, hasta que dimos con el problema, el problema que se nos presento después fue el borrar los proyecto que generamos de prueba, y bien aplicamos el proceso simple con el comando TfsDelete
TFSDeleteproject [/q] [/TeamFoundationServer:servername] [/force] project name
Recibimos una gran sorpresa, al correr el comando nos desplegaba que el proyecto no existía, y va la revisión de todo a fondo, en aquel tiempo no existía casi nada de información sobre el tema Team System, después de un buen tiempo revisando todo paso a paso la operación que realizaa el Team Foundation Server cuando genera un proyecto, entendimos lo que teniamos que hacer para eliminar esos poryectos corruptos, y bien les dejo aquí nuestros pasos.
1.- Entrar a la base de datos del Team Foundation server(SQL) posteriormente entrar a la base llamada TfsIntegration, después seleccionamos la tabla de "tbl_Projects" en esta veremos el nombre del proyecto, el id, y el estatus, cuando un proyecto se genera de forma corrupta no marcara como estatus "New" este estatus lo tenemos que cambiar por "WellFormed" manualmente y cerramos la tabla.
2.-La segundo cosa de hacer es conectarnos ahora a nuestro reporting services, dentro de este seleccionamos la carpeta de HOME, ya dentro de esta debemos de generar el sitio del proyecto manualmente .
3.-Ahora abrimos nuestro Visual Studio, y debemos de ver en Team Explorer que ya podemos agregar el proyecto creado corruptamente.
4.-Ahora dentro de Source Control damos un Get Lastest Version y nos debe de aparecer el proyecto dentro del Source Control Explorer.
5.- Ya como punto final y no por esto el más simple, aplicamos desde la ventana de comandos el comando TfsDelete y listo ahora si nos dejara eliminar el proyecto.
Espero esto les sea de utilidad!
viernes, 19 de enero de 2007
Check Out en Team System
Check out en Team System
Este post esta básado y contiene textos e imagenes directamente tomados del artículo Check Out in Team System de Martin Woodward, publicado bajo licencia Creative Commons. Todos los textos en cursiva han sido 'directamente' traducidos del artículo anteriormente citado las partes que no están en cursiva son de mi cosecha. Una vez aclarado esto, vayamos al grano...
Cada vez más gente me está preguntando ¿por qué TFS cuando hace check out, no obtiene la última versión?.
El problema es que la terminología empleada varia dependiendo de cual sea el gestor de fuentes del que vienes. En Visual Source Safe o PVCS, Check Out significa "dame la ultima versión del archivo y bloqueale para que ningún otro pueda editarlo". En CVS y Subversion, Check Out significa "dame la última versión". Si estas usando las caracteristicas de control de código fuente de Team System, entonces, Check Out significa "dile al servidor que yo quiero editar este archivo y marca el archivo como escribible en mi sistema de archivos", al mismo tiempo que tu haces Check Out del archivo tambien tiene la opción de bloquerlo usando uno de tres tipos de bloque existente (none, Check Out o Check In).
Team System tiene el concepto de Workspaces. El servidor conoces tu Workspace, conoce que directorios locales has mapeado en que Workspace, que versiones de los archivos tienes en este Workspace y de que cambios pendientes has informado al servidor. Para obtener la última versión de un archivo, debes llamar explicitamente al comando Get Latest para descargar los archivos. Si alguien crea una nueva versión de un archivo, no lo verás en tu sistema local de archivos hasta que vuelvas ha ejecutar Get Latest otra vez. Y no esto no se puede cambiar, ni siquiera usando Check Outs exclusivos.

Cuando hace Check Out de un archivo, lo que realmente estás diciendo es "Servidor, estoy a punto de editar la versión 3 del archivo"
Finalmente, cuando haces Check In del archivo, coges el archivo desde tu Workspace local y le pasas hasta el servidor. Este archivo ahora se convierte en la última versión.
Ahora, imagina que no has optenido la última versión antes de hacer el Check Out. Cuando haces el Check In, el servidor sabe que los cambios fueron hechos en la versión 1 del archivo, por eso te avisa de que es un cambio conflictivo y te pide que resuelvas estos conflictos antes de hacer Check In en este archivo.
¿Por qué no simplemente obtener la última versión cuando tu hace Check Out de un archivo? El problema con este enfoque es que si obtuviesemos la última versión podríamos intruducir nuevas dependencias repecto a archivos que aun no tenemos. Team System opta por el enfoque más seguro y optiene el archivo solo cuando se lo pedimos.
Hasta aqúi las partes relevantes de como funciona el tema. Pero yo voy a ir un paso más allá que el amigo Martin Woodward, explicando que significa eso de "introducir nuevas dependendias". El problema es que cuando hacer Check Out implica obtener la última versión, nosotros perdemos el control de que es lo que realmente obtenemos. Se puede dar el caso de que simplemente para hacer una edición menor en un archivo, por ejemplo para hacer un Workarraound temporal para poder continuar con una pequeña tarea, no tengamos que bajar infinidad de ficheros solo para poder compilar. Si el archivo del que hacemos obtenemos la última versión cambio mucho, y por ejemplo, llama a nuevas partes del código que a nosotros no nos interesan, el obligar la obtencion de la última versión no obliga a bajar un motón de código que no es relevante para nuestra tarea actual.
La manera de trabajar en Team System tambien soporta algunas técnicas avanzadas de gestión de código que son dificiles de llevar a cabo con otros gestores de fuentes, como por ejemplo Golden Lines o Quality Gates, en las que puede que tu no tengas permiso para integrar código, que las integraciones de nuevo código solo se hagan en un determinado momento fijado en el tiempo o que el desarrolador ni siquiera sea quien puede integrar ese código, sino que hay un equipo exclusivamente encargado de la integración. Resumiendo hay patrones de gestión de código fuente que son dificiles o imposibles de llevar a cabo si se realiza la obtención de la última versión en el momento de realizar el Check Out.
En VSS y otros gestores que implementan el enfoque de obtener última versión al hacer Check Out, esto se solucionaba, quitando 'a manopla' el atributo de solo lectura al proyecto, lo que de todos modos te llevaba a tener que corregir una incosistencia.
Eso si, he de reconocer que este escenario no es habitual, y que no acaba de convencerme al 100% el enfoque que han elegido en Team System, sobre todo por una cuestión: se separa de el enfoque al que estamos acostumbrados. Seria simple haber puesto una opción que permitiese variar el comportamiento. Parece que esta posibilidad la introduciran en proximas revisiones/versiones de Team System, puesto que de hecho el Visual Studio 2005 Team Foundation Server MSSCCI Provider (que se usa para acceder al gestor de fuentes de TFS desde Visual Studio 2003, PowerBuilder, VB 6.0 etc...) ya soporta "GetLatest on Checkout support".
De todos modos existen algunos 'workarrounds' que nos pueden ayudar. Por ejemplo podemos añadir una macro de Visual Studio para que cuando abramos un fichero que es de solo lectura (y por tanto, es probable que este en el gestor de fuentes) se obtenga su última versión. Para ello solo tenemos que hacer Alt + F11 en visual estudio, y añadir en el archivo EnviromentEvents, dentro del modulo EnviromentEvents el siguiente código:
Public Sub DocumentEvents_DocumentOpening(ByVal DocumentPath As String ByVal Read_Only As Boolean) Handles DocumentEvents.DocumentOpening
Dim attr As IO.FileAttributes
attr = IO.File.GetAttributes(DocumentPath)
If (attr.ReadOnly) Then
DTE.ExecuteCommand("File.TfsGetLatestVersion")
End If
End Sub
Otra opción es hacer una macro similar que podemos asociar a un menu o a un botón que, nos permita de manera simultanea optener la última versión y hacer Check Out:
Sub CheckoutLatest()
DTE.ExecuteCommand("File.TfsGetLatestVersion")
DTE.ExecuteCommand("File.TfsCheckOut")
End Sub
Team Foundation Server on 64 bits
Hola como están todos, pues la primer publicación de este blog :)
Por primera vez yo creo que sera conveniente tomar un buen tema de inicio, me he topado con muchas preguntas sobre si es posible instalar nuestro Team Foundation Server en 64bits.
Les dejo unas notas interesantes sobre el Tema
What is supported at RTM Team Foundation Server?
You can install the Team Foundation data tier in a dual-server deployment on a Windows 64-bit operating system that is running a 64-bit edition of SQL Server 2005. Since the Team Foundation data tier is hosted by SQL Server, it will run natively on a Windows 64-bit operating system.
You can install Visual Studio 2005 and Team Foundation Build on a Windows 64-bit operating system; both will run under WOW64.
You must install Team Foundation Server application tier, including Team Foundation Server Proxy, on a 32-bit edition of Windows Server 2003.
64 Bits Support
Cómo muchos sabrán encontrarnos con equipos de 64 bits en las empresas se ha vuelto común y existen muchas herramientas de 32 bits, una de esas es el Team Foundation Server, hace días atrás tuve que montar un ambiente de desarrollo en equipos de 64 bits, muchos preferirían instalar Windows 32 bits y así evitarse algunos problemitas que se puede encontrar al momento de montar aplicaciones que vienen en 32 en sistemas operativos de 64 bits, pero no estaríamos aprovechando el potencial que nos brindan estos esquipos, por tal razón windows server 2003 tiene un subsistema llamado WOW el cual permite correr aplicaciones de 32bits sobre este windows de 64 bits, es por esto que esta es una muy pequeña pero elemental guía de cómo montar nuestros ambientes de desarrollo sobre estos servidores (El deploy que se hizo fue en un single server):
1. En la capa de datos, pues la instalación para SQL Server 2005 es la típica si montamos SQL Server 2005 64 bits.
2. Al momento de instalar Sharepoint deben seguir la siguientes recomendaciones:
Al momento de instalar el Internet Information Server (IIS) en un equipo que ejecuta edición de Windows Server 2003 x 64, se debe configurar IIS para ejecutarse en modo de emulación de 32 bits. Para ello, siga estos pasos en cada servidor Web de servicio de fondo que ejecuta edición de Windows Server 2003 x 64:
a. Haga clic en Inicio, haga clic en Ejecutar, escriba cmd y a continuación, haga clic en Aceptar.
b. En el símbolo del sistema, mueva carpeta \Inetpub\Adminscripts al %drive%. Tenga en cuenta que aquel %drive% es la unidad en la que está instalado Windows Server 2003.
c. En la carpeta Adminscripts, escriba el comando siguiente y a continuación, presione ENTRAR:
Adsutil.vbs cscript estableció w3svc/AppPools/Enable32bitAppOnWin64 1
Nota El valor "1" para Enable32bitAppOnWin64 especifica modo de 32 bits. El valor "0" especifica modo de 64 bits.
d. Escriba iisreset y a continuación, presione ENTRAR.
e. Cierre la ventana de Símbolo del sistema.
f. Instalar WSS SP 2
3. Y por último la siguiente recomendación al momento de instalar el TFS les recomiendo revisar el blog de Rob Caron:
http://blogs.msdn.com/robcaron/archive/2005/10/28/486302.aspx
Espero les sirva de utilidad.
Por primera vez yo creo que sera conveniente tomar un buen tema de inicio, me he topado con muchas preguntas sobre si es posible instalar nuestro Team Foundation Server en 64bits.
Les dejo unas notas interesantes sobre el Tema
What is supported at RTM Team Foundation Server?
You can install the Team Foundation data tier in a dual-server deployment on a Windows 64-bit operating system that is running a 64-bit edition of SQL Server 2005. Since the Team Foundation data tier is hosted by SQL Server, it will run natively on a Windows 64-bit operating system.
You can install Visual Studio 2005 and Team Foundation Build on a Windows 64-bit operating system; both will run under WOW64.
You must install Team Foundation Server application tier, including Team Foundation Server Proxy, on a 32-bit edition of Windows Server 2003.
64 Bits Support
Cómo muchos sabrán encontrarnos con equipos de 64 bits en las empresas se ha vuelto común y existen muchas herramientas de 32 bits, una de esas es el Team Foundation Server, hace días atrás tuve que montar un ambiente de desarrollo en equipos de 64 bits, muchos preferirían instalar Windows 32 bits y así evitarse algunos problemitas que se puede encontrar al momento de montar aplicaciones que vienen en 32 en sistemas operativos de 64 bits, pero no estaríamos aprovechando el potencial que nos brindan estos esquipos, por tal razón windows server 2003 tiene un subsistema llamado WOW el cual permite correr aplicaciones de 32bits sobre este windows de 64 bits, es por esto que esta es una muy pequeña pero elemental guía de cómo montar nuestros ambientes de desarrollo sobre estos servidores (El deploy que se hizo fue en un single server):
1. En la capa de datos, pues la instalación para SQL Server 2005 es la típica si montamos SQL Server 2005 64 bits.
2. Al momento de instalar Sharepoint deben seguir la siguientes recomendaciones:
Al momento de instalar el Internet Information Server (IIS) en un equipo que ejecuta edición de Windows Server 2003 x 64, se debe configurar IIS para ejecutarse en modo de emulación de 32 bits. Para ello, siga estos pasos en cada servidor Web de servicio de fondo que ejecuta edición de Windows Server 2003 x 64:
a. Haga clic en Inicio, haga clic en Ejecutar, escriba cmd y a continuación, haga clic en Aceptar.
b. En el símbolo del sistema, mueva carpeta \Inetpub\Adminscripts al %drive%. Tenga en cuenta que aquel %drive% es la unidad en la que está instalado Windows Server 2003.
c. En la carpeta Adminscripts, escriba el comando siguiente y a continuación, presione ENTRAR:
Adsutil.vbs cscript estableció w3svc/AppPools/Enable32bitAppOnWin64 1
Nota El valor "1" para Enable32bitAppOnWin64 especifica modo de 32 bits. El valor "0" especifica modo de 64 bits.
d. Escriba iisreset y a continuación, presione ENTRAR.
e. Cierre la ventana de Símbolo del sistema.
f. Instalar WSS SP 2
3. Y por último la siguiente recomendación al momento de instalar el TFS les recomiendo revisar el blog de Rob Caron:
http://blogs.msdn.com/robcaron/archive/2005/10/28/486302.aspx
Espero les sirva de utilidad.
Suscribirse a:
Comentarios (Atom)










