www with whats what update tutorials learn features advantages .net version-control development-environment

.net - with - what''s git



¿Entorno de desarrollo "perfecto".NET? (15)

Me dieron un regalo de Navidad temprano:
Permiso para salir del ciclo de desarrollo para reorganizar y documentar nuestra aplicación.
Tengo completa libertad para reestructurar, refactorizar y configurar cualquier cantidad de infraestructura que considere conveniente.

Si tuviera carta blanca , ¿cuál es su entorno de desarrollo .NET "perfecto"?

Sobre la aplicación:
Aplicación cliente-servidor VB.NET. (Windows Forms front end, ASPX Webservices back end)
Actualmente usando Visual Studio y SQL Server 2003 y ... Visual SourceSafe.

Me gustaría tener una combinación de:
* Mejor versionado. (inclinándose hacia Subversion)
* Wiki u otro sistema para seguimiento y documentación de errores. (inclinándose hacia Trac con Subversion)
* Proceso de compilación simplificado y compilaciones diarias ( Visual Build ? CruiseControl.NET ?)
* Control de versiones para la base de datos de SQL Server
* ¿Actualizar a Visual Studio 2005 (o 2008)?

... para un pequeño equipo de 5 o más desarrolladores


Estoy de acuerdo con VS2008 con SP1, SVN (con Ankh y Tortoise)

Busque en sandcastle / docproject para generar documentación.

CruiseControl funciona bien.

En cuanto al control de fuente para las bases de datos, puede usar el tipo de proyecto de base de datos en VS2008 y usar SVN (u otra solución de control de origen de su elección) para mantenerlo bajo control de fuente.


Mi recomendación para IDE y control de fuente:

  • VS2008 con SP1
  • SubVersion, con TortoiseSVN (para Windows Explorer) y AnkhSVN (para VS2008)

Soy un converso reciente a SourceGear Fortress. Es barato, rápido y confiable.

Me encanta TFS para equipos más grandes (> 20 desarrolladores). Estoy empezando a mojarme los pies con Subversion, por lo que aún no tengo nada que compartir, excepto que fue muy fácil de configurar.

Trac, sin embargo, fue muy difícil de ejecutar. Sin embargo, esa es una cuestión de documentación, no del producto en sí.


Yo emitiría un voto para Team Foundation Server. Luego tiene control de fuente, compilaciones automatizadas y (tipo de) seguimiento de errores, todo en un solo paquete, que se integra muy bien con VS 2008. Sin embargo, tiene un precio bastante elevado.


Utilizamos SourceGear''s Vault para el control de versiones y funciona bien para nosotros como un equipo pequeño.

Para el seguimiento de proyectos / errores / soporte usamos OnTime 2008 de AxoSoft.

También usamos ScrewTurn Wiki para documentar procedimientos y códigos de muestra / mejores prácticas.

Para nuestro proceso de compilación, no hemos automatizado completamente en un proceso diario porque generalmente no trabajamos de esa manera. Sin embargo, para las compilaciones beta y de lanzamiento, solo uso NAnt para hacer una compilación completa después de actualizar los números de versión manualmente (esto lo hago para obtener mejores números de versión para nuestro equipo de soporte).

Y definitivamente use Visual Studio 2008. La versión de 2005 realmente tenía muchos problemas en grandes proyectos de VB (al menos para nosotros).


Muy sí en VS 2008 con SP1. También recomendaría encarecidamente:


He escuchado varias cosas buenas sobre TFS; sin embargo, también existe el factor de costo. Las herramientas que enumeró funcionan muy bien entre sí y son gratuitas.

Una adición que haría es TortoiseSVN para el cliente de Subversion. A los puristas no les gusta, pero el hecho de que se integre con los menús de contexto del shell de Windows (clic derecho) lo hace muy fácil de usar.

Para las versiones de SVN, vaya con la versión 1.6 que salió recientemente. La ramificación y la fusión se han mejorado con esta versión.

Trac es una gran herramienta. Asegúrese de leer las reglas de formato de TracWiki y TracLinks para sus mensajes de confirmación de SVN. Trac analiza estos mensajes, por lo que si está comprometiendo una solución para el Ticket 123, agregar ''# 123'' al mensaje SVN le permite a Trac vincular esa confirmación (y todos los archivos asociados con ella) con los tickets correspondientes de Trac. Esto se vuelve especialmente útil si decides cambiar a las versiones delta y cuando decides hacerlo.


Creo que todos se están inclinando en la dirección correcta.

Vaya con Visual Studio 2008. Es muy estable con SP1, y puede orientar tanto a la versión 2 como a la versión 3 de .NET Framework.


Cualquier entorno de desarrollo .NET perfecto tendría una copia de ReSharper instalada. Soy un converso reciente, y me encanta .



Estamos utilizando Subversion con Jira para el seguimiento de fallas , administración de proyectos, FishEye y Crucible para la exploración de fuentes y revisión de código, y funciona muy bien.

Somos un equipo de 12 desarrolladores repartidos por todos lados. Somos usuarios de FinalBuilder desde hace mucho tiempo, que utilizamos para realizar todas las construcciones y la implementación automatizada, una combinación de proyectos de VB.NET y Visual Studio 2008, y nos está resultando excepcionalmente bien. Nos dirigimos a las bases de datos de SQL Server 2005/2008 y mantenemos los objetos de la base de datos en el repositorio de control de origen. La mayoría de las veces utilizamos Visual Studio 2008 Database Edition combinada con herramientas de Redgate y funciona muy bien para nosotros, especialmente la gestión de los scripts de cambio y otras cosas. Para nosotros, TFS simplemente no funcionó, aunque su kilometraje puede variar. Descubrimos que era demasiado engorroso, difícil de personalizar el flujo de trabajo y, en lugar de ayudar con el flujo de trabajo, tenía una mala tendencia a interponerse en el camino.


Mi preferencia es para la configuración de Visual Studio 2008 / Subversion / Trac / Anck y Tortoise / CruiseControl.NET (TeamCity / Bitten ).

No digo que TFS no sea un gran producto, pero creo que es "voluminoso". Cambié recientemente de una solución Trac / Subversion a TFS y prefiero la primera configuración. Hay detalles, pero hacen que sea agradable trabajar con ellos.

Ejemplo:

  • TFS envía correos para registros y construcciones, en Trac hay un feed de línea de tiempo fácil. (Hay soluciones para TFS).
  • cuando hay un nuevo checkin, haga clic en el enlace (del feed) y se encontrará en el entorno de Trac. Ves una buena diferencia con el chancgeset anterior. (donde en TFS?)
  • La wiki integrada es un entorno muy agradable para la documentación interna.
  • IntelliSense en el cliente de Tortoise para sus comentarios
  • buena interfaz web para navegar por la fuente, actualizar la documentación (fue fácil cuando estaba en casa)
  • ...

Los pequeños detalles lo convierten en una herramienta mucho más agradable para mí.

También digo que el equipo era pequeño (también 5 desarrolladores) y necesitas algo de tiempo para configurarlo. Estoy de acuerdo en que cuando trabajas con equipos más grandes, TFS es quizás preferible.


Mis elecciones serían:

Mejor versionado.

Escogería SourceGear Vault : sólido como una roca, funciona como un amuleto, su fuente está almacenada en bases de datos de SQL Server, puede respaldarse fácilmente y no es escamosa como Visual SourceSafe.

Wiki u otro sistema para seguimiento y documentación de errores.

Desde mi experiencia personal: FogBugz es su mejor apuesta: simple, fácil, rápida de comprender, hace el trabajo bien, solo funciona y todo el mundo simplemente "lo consigue" sin una adaptación / personalización larga y costosa y sin mucho entrenamiento, solo funciona: )

Proceso de compilación simplificado y compilaciones diarias (Visual Build? CruiseControl.NET?)

CruiseControl.NET es una gran opción gratuita, si no te importa gastar un poco de dinero, también miraría a FinalBuilder, ya sea como una aplicación de escritorio o de servidor.

Control de versiones para la base de datos de SQL Server

-> ¡usa Vault! Funciona de la misma manera. Utilice una gran herramienta como Apex SQL Scripter o algo similar para crear y mantener su SQL para crear y actualizar el esquema de la base de datos, y poner esos scripts SQL en Vault.

¿Actualizar a Visual Studio 2005 (o 2008)?

Vaya con Visual Studio 2008 SP1 en .NET 3.5 SP1: sólido y lleno de excelentes características de productividad nuevas.

Solo mi $ 0.02


No importa cuánto tiempo y pensamiento pongas en esto, probablemente nunca termines con un ambiente "perfecto". Cada herramienta tiene sus propios quarks y problemas. Sin embargo, aquí hay algo de reflexión:

Vaya a la última y mejor versión de Visual Studio, Visual Studio 2008 SP1.

Si es un suscriptor de MSDN y ha comprado la versión del sistema de equipo de Visual Studio, puede instalar Team Foundation Server (TFS). TFS es un producto bastante elegante que está integrado en Visual Studio. Utiliza Windows Sharepoint Services (WSS), que le daría la capacidad de tener wikis, repositorios de documentos, etc. (básicamente una versión simplificada de Microsoft Office Sharepoint Server). TFS también le dará la versión más reciente de Visual SourceSafe, con la que no he tenido problemas, y Microsoft dice que puede escalar a cientos de miles de usuarios. La edición TFS Workgroup le permitirá usar hasta 5 desarrolladores sin tener que comprar una licencia. Más de 5 usuarios, y tendrás que comprar licencias. También estoy bastante seguro de que tendría que usar SQL Server 2005 para ejecutar TFS, pero podría estar equivocado. Tenemos TFS instalado en una sola caja (nuestro cuadro de desarrollador), y no hemos tenido problemas.

SO TFS te daría:

  • Colaboración
  • Control de versiones
  • Informes sobre el estado del proyecto
  • Seguimiento de problemas
  • Integración en Visual Studio
  • Una gran cantidad de otras golosinas

Para sus versiones diarias y continuas, me inclinaría hacia CruiseControl.NET (CC.NET). Intentamos utilizar el sistema de compilación integrado en TFS, pero nos topamos con muchos, muchos problemas (sobre todo debido a la estructura de nuestros proyectos). CruiseControl.NET fue muy fácil de instalar y configurar, y funciona como un campeón. Puede configurarlo para la construcción continua (cada check-in desencadena una compilación) y compilaciones diarias. Es posible que tenga que encontrar algunas formas inteligentes de hacer que CruiseControl.NET haga algunas de las tareas más difíciles (como detener un servicio, etc.), pero no ha podido hacer nada de lo que he necesitado. También es bastante extensible, por lo que puedes escribir un código para que haga lo que quieras, lo cual es una buena característica.

No estoy seguro sobre el control de versiones de la base de datos, pero supongo que puede usar TFS Source Safe para lograr esto.

¡Buena suerte!


Recomiendo las siguientes herramientas (principalmente porque es lo que estamos usando):

Todos trabajamos en nuestras máquinas locales y tenemos un servidor de compilación independiente que supervisa el repositorio de Subversion (usando CruiseControl.NET) y crea la última revisión en ese servidor.

Usamos ''MSBuild Community Tasks'' para incrustar el número de revisión de Subversion en el ensamblado para que podamos mostrarlo al usuario.

Los "agujeros" más grandes que tenemos en nuestra configuración en este momento están en la base de datos y en nuestras pruebas automáticas.

Actualmente todos nos escapamos de un servidor de base de datos central. Idealmente, debería trabajar para tener un script que vuelva a crear su base de datos bajo el control de código fuente. Por lo que veo, cada vez que el servidor de compilación reconstruye el sitio, también debería reconstruir la base de datos. También debe tener una secuencia de comandos que generará los datos de prueba que desee en la base de datos.

Con compilaciones de bases de datos como esta, todos pueden trabajar también en una copia local de la base de datos.

Es posible que desee echar un vistazo a la herramienta de SQL Toolbelt (o partes de ella) desde el software de Red Gate : utilizamos las herramientas SQL Compare para implementar esquemas en servidores en vivo y estoy realmente impresionado con ellos.

¡Buena suerte!