Stratos: Punto de Encuentro de Desarrolladores

¡Bienvenido a Stratos!

Acceder

Foros





Versionando en visual studio

Iniciado por ZüNdFoLGe, 16 de Octubre de 2010, 04:29:52 PM

« anterior - próximo »

ZüNdFoLGe

Acabo de echarle un vistazo al plugin de TortoiseSVN para visual studio y parece estar muy bueno, por ahora me decanto a usarlo.

Que utilizas para manejo de versiones en Visual Studio?

Tal vez me pierda de algo mejor.

Gracias de antemano por las recomendaciones/comentarios.

blau


Vicente

Pues depende del repositorio que uses. Si usas Team Foundation Server el Visual Studio ya se lleva bien con él de serie (lo mismo en el Express tienes que instalar el Cliente a mano).

Para SVN yo uso Tortoise en el explorador de Windows y si lo prefieres hay una extensión del VS para tener un explorador de Windows dentro del mismo (http://www.mindscape.co.nz/Products/vsfileexplorer/default.aspx).

Un saludo!

Vicente

fjfnaranjo

 >:(

Team Foundation Server es probablemente la mierda informática más horrenda que he visto en mi vida... Y que conste que soy usuario de Windows, de Visual Studio, y etc, pero el sistema de versiones de Microsoft es sencillamente un error de concepto detrás de otro, un ejemplo de lo mal que pueden llegar a hacerlo un escuadrón de ingenieros de Microsoft después de fumarse 3 kilos de marihuana. De hecho, a cualquier persona con un poco de experiencia desarrollando que lo haya probado y que no este a sueldo de Microsoft (difícil, por cierto) le puedes preguntar y sólo te contará errores y problemas. Obviamente, está bien integrado con VS, pero es porque si Microsoft no lo integra con su IDE principal sería para escupirles en un ojo.



SVN está bien, es algo antiguo, pero cumple su función para repositorios centralizados de código. Se supone que es la evolución de CVS, así que entre estos dos, SVN parece la opción más lógica. Además, está ampliamente usado, y lo soporta todo cristo. Para colmo, para Windows, está el cliente TortoiseSVN que es una maravilla divina (cuando funciona bien  :P).

No obstante, si lo que buscas es información más actualizada sobre sistemas de control de versiones, ahora se están poniendo de moda los sistemas descentralizados, especialmente en proyectos de software libre. Básicamente el concepto es que cada uno tiene su repositorio en su máquina, y hay un repositorio principal al que realizar "fusiones" o "mezclas", pero que en esencia es igual que el repositorio de cada usuario. Eso facilita que se compartan parches y se creen distribuciones del código más flexibles de las que SVN permite.

Pero vamos, si no dominas bien SVN, meterse en git o mercurial puede ser un pifostio...
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

Vicente

#4
Cita de: fjfnaranjo en 16 de Octubre de 2010, 09:29:49 PM
>:(

Team Foundation Server es probablemente la mierda informática más horrenda que he visto en mi vida... Y que conste que soy usuario de Windows, de Visual Studio, y etc, pero el sistema de versiones de Microsoft es sencillamente un error de concepto detrás de otro, un ejemplo de lo mal que pueden llegar a hacerlo un escuadrón de ingenieros de Microsoft después de fumarse 3 kilos de marihuana. De hecho, a cualquier persona con un poco de experiencia desarrollando que lo haya probado y que no este a sueldo de Microsoft (difícil, por cierto) le puedes preguntar y sólo te contará errores y problemas. Obviamente, está bien integrado con VS, pero es porque si Microsoft no lo integra con su IDE principal sería para escupirles en un ojo.



Si el TFS fuera semejante mierda como afirmas sería difícil que 3000 personas curraran sobre él, y mira tú por donde la division de DevDiv de Microsoft lo usa internamente y pone las estadísticas para disfrute del personal:

http://blogs.msdn.com/b/bharry/archive/2009/07/13/july-09-devdiv-dogfood-statistics.aspx

Y Codeplex, que corre sobre TFS ahora mismo tiene 18267 proyectillos de nada.

Así que menos talibanismos ridículos: el TFS es un buen software de control de versiones.

fjfnaranjo

Vale, me dejo de talibalismos entonces.

"18267 proyectillos de nada" no es nada, comparados con las bases de datos de sorceforge, savanah, github, etc juntas. Acepto que VCS modernos como git y mercurial no tienen mucha difusión, pero SVN está más que establecido en comparación con TFS.

TFS está mal diseñado. Si bien le han lavado bastante la cara en los últimos 5 años, sigue presentando problemas muy graves de concepto. Te hablo desde caídas temporales del servidor TFS y como se comporta el cliente (que por ahora sólo es VS), hasta problemas con el trabajo simultáneo, que se supone que todo VCS debería resolver limpiamente.

Si hay 3000 personas trabajando sobre TFS es porque a Microsoft le debe sobrar la pasta, porque los sistemas alternativos y libres que hay han sido desarrollados sin tanta financiación y logística y cumplen perfectamente su cometido. Que Microsoft invierta gente y recursos económicos en TFS esta razonado por la misma razón por la que VS no incorporá un cliente SVN de serie en condiciones: Estrategia de mercado, que poco tiene que ver con buscar la eficiencia del producto, si no su simple distribución, para crear aun más dependencia de sus productos para sus plataformas de la que ya hay.

Por el mismo motivo, DevDiv lo usa. Si yo fuese Microsoft y uno de mis empleados no usase un producto mio, considerando la mentalidad que tengo, lo pondría en la calle.

Y no niego el esfuerzo que Microsoft pone en cosas como el kernel linux, o en proyectos como Mono. Reconozco que para lo que están obligados a hacer, hacen bastante. No hablo de que Microsoft sea mala como empresa, hablo del producto TFS y de cuales son para ellos las verdaderas metas a conseguir con este proyecto.
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

Vicente

Cita de: fjfnaranjo en 17 de Octubre de 2010, 12:43:32 AM
"18267 proyectillos de nada" no es nada, comparados con las bases de datos de sorceforge, savanah, github, etc juntas. Acepto que VCS modernos como git y mercurial no tienen mucha difusión, pero SVN está más que establecido en comparación con TFS.

¿Que tiene que ver que SVN se use más con que TFS sea malo? Yo solo te lo pongo como ejemplo de que hay despliegues grandes de TFS que funcionan sin problemas. Algo que es difícil cuando se afirma que es una mierda :p

Cita de: fjfnaranjo en 17 de Octubre de 2010, 12:43:32 AM
TFS está mal diseñado. Si bien le han lavado bastante la cara en los últimos 5 años, sigue presentando problemas muy graves de concepto. Te hablo desde caídas temporales del servidor TFS y como se comporta el cliente (que por ahora sólo es VS), hasta problemas con el trabajo simultáneo, que se supone que todo VCS debería resolver limpiamente.

En serio, no sé que experiencia has tenido con TFS, pero no estás muy informado. ¿El cliente es solo el VS? Mira, mira:

Citar
"Microsoft Corporation purchased the Teamprise assets from SourceGear in November 2009 and released the rebranded product as Visual Studio Team Explorer Everywhere 2010. Team Explorer Everywhere includes the popular Plug-in for Eclipse and cross-platform command-line clients for Team Foundation Server."

Y nos vamos a la página del Visual Everywhere ese y dice:

Citar
Operating Systems: Windows XP SP2 , Windows Vista, or Windows 7 (x86, x64), or Linux with GLIBC 2.3 to 2.11 (x86, x86_64, PowerPC), or Mac OS X 10.4 to 10.6 (PowerPC, Intel), or Solaris 8, 9, 10 (SPARC, x86, x86-64), or AIX 5.2 to 6.1 (POWER), or HP-UX 11i v1 to v3 (PA-RISC, Itanium).

Any of the following IDEs:
-Eclipse 3.0 to 3.5 on Windows, Linux, Mac OS X, Solaris, AIX, or HP-UX.
-IBM Rational Application Developer 6.0 to 7.5 on Windows.
-IBM Rational Application Developer 7.0 to 7.5 on Linux.
-Additional IDEs based on Eclipse 3.0 to 3.5 are supported including Adobe Flex Builder 3 and Aptana Studio 2.0.

TFS tiene expone una API bastante bien documentada, y eso permite que la gente se pueda hacer clientes para interactuar con él. Otro ejemplo:

http://svnbridge.codeplex.com/

Cita de: fjfnaranjo en 17 de Octubre de 2010, 12:43:32 AM
Si hay 3000 personas trabajando sobre TFS es porque a Microsoft le debe sobrar la pasta, porque los sistemas alternativos y libres que hay han sido desarrollados sin tanta financiación y logística y cumplen perfectamente su cometido.

Obviamente a Microsoft no creo que le cueste mucho la licencia de TFS :p Así que si está trabajando con él es por un motivo mucho menos enrevesado: porque funciona.

Cita de: fjfnaranjo en 17 de Octubre de 2010, 12:43:32 AM
Que Microsoft invierta gente y recursos económicos en TFS esta razonado por la misma razón por la que VS no incorporá un cliente SVN de serie en condiciones: Estrategia de mercado, que poco tiene que ver con buscar la eficiencia del producto, si no su simple distribución, para crear aun más dependencia de sus productos para sus plataformas de la que ya hay.

Microsoft no impide a nadie hacer un cliente de SVN que se integre con el Visual Studio y gane dinero con ello. Para eso están sus partners si alguno considera que es un producto interesante. Como por ejemplo hizo la gente de SourceGear que he citado anteriormente creando un cliente alternativo de TFS.

Lo curioso es que estando tan claro que es semejante mierda, alguien pudiera pensar que era una buena idea de producto hacer un cliente de TFS para otros IDEs y SOs...

Cita de: fjfnaranjo en 17 de Octubre de 2010, 12:43:32 AM
Por el mismo motivo, DevDiv lo usa. Si yo fuese Microsoft y uno de mis empleados no usase un producto mio, considerando la mentalidad que tengo, lo pondría en la calle.

Obviamente Microsoft no piensa como tú: antes de usar TFS no usaban Sourcesafe, usaban Perforce (supongo que lo seguirán usando en algunos sitios, ni idea la verdad).

Cita de: fjfnaranjo en 17 de Octubre de 2010, 12:43:32 AM
Y no niego el esfuerzo que Microsoft pone en cosas como el kernel linux, o en proyectos como Mono. Reconozco que para lo que están obligados a hacer, hacen bastante. No hablo de que Microsoft sea mala como empresa, hablo del producto TFS y de cuales son para ellos las verdaderas metas a conseguir con este proyecto.

Como con cualquier producto, lo que quieren es vender. ¿Pero esto que tiene que ver con lo bueno o malo que es? Así que de nuevo, TFS funciona y funciona bien, hay proyectos muuuy grandes que lo usan sin problemas.

fjfnaranjo

Quotear está feo...

Ya he retirado lo de afirmar que es una mierda y nada más, así que supéralo y deja de echármelo en cara. También he dicho que me iba a dejar de talibalismos.

Tienes razón en tus argumentos y las pruebas que ofreces son difíciles de refutar, así que quizás no he expresado bien lo que quería decir y por tanto, en lugar de quotearte infantilmente, voy a reexponer mi punto en el asunto.

Se supone que mi conclusión es que no recomendaría el uso de TFS a nadie (he sido exagerado al decir que era una mierda, lo reconozco, pero no cambia mi conclusión, ni que piense que no es un "buen" software). Mis razones son las siguientes:

- Es un software cerrado y oscuro. La comunicación que hay con el es a través de una API gestionada exclusivamente por Microsoft. Usar este sistema es apoyar esta "idea" de trabajo, que dos puntos más abajo señalo por qué es perjudicial.
- El servidor (los clientes aparte, por favor) sólo funciona sobre una determinada plataforma de la cual el vendor también es Microsoft, y con un sólo sistema gestor de bases de datos, también propietario y de Microsoft.
- Microsoft apoyará TFS siempre y cuando también prospere como producto, y su calidad vendrá entonces determinada por estrategias comerciales, nunca por afán de superación o por la intención de crear un software mejor.
- TFS es un producto que intenta abarcar demasiadas cosas, desde mi punto de vista. Aunque el equipo de trabajo sea muy grande, la complejidad de lo que hace es también muy grande, y Microsoft por experiencia no hace bien las cosas grandes (se libran un par de versiones de sistema operativo, el excel y el paint :P).
- De todas formas, para el contenido del post, realmente no se trata de juzgar TFS, si no TFVC, y básicamente es una copia de SVN que tiene una característica extra (eso de mandar commits pero no ejecutarlo) y se puede emular en SVN con un copy.

Ea, perdón por el talibalismo inicial.
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

Vicente

Resumiendo: TFS es una buena opción para usar con Visual Studio (lo cual era de cajón) a menos que tengas problemas personales con el software propietario.

fjfnaranjo

No.

El resumen no es ese.

TFS no es recomendable para nadie, por mucho soporte que tenga de Microsoft y al margen de la opinión que cualquiera tenga sobre el software libre.

Los puntos que defienden esta afirmación, están en mi anterior mensaje.
fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

Vicente

Tus argumentos son:

- Los dos primeros puramente ideológicos.
- El tercero es una tontería si realmente crees que el equipo de TFS no trabaja con afan de construir un software mejor. ¿Qué están limitados por dinero? Pues claro, todo producto software sea desarrollado como sea desarrollado tiene limitaciones de algún tipo, sean dinero, tiempo, intereses,...
- El cuarto me da a mi que confundes Team Foundation Server con Team System.

Así que básicamente no hay ni un argumento técnico por el cual TFS no es un buen control de versiones para usar con Visual Studio.

Y además, quien preguntó usa Visual Studio: que es cerrado, con una API gestionada por Microsoft, que solo funciona en una plataforma gobernada por Microsoft, que es un producto de Microsoft y depende de estrategias comerciales de Microsoft,...

blau

@ZüNdFoLGe

Que no te confundan, digan lo que digan, en mi opinión, la opción recomendada para casi cualquier mortal es:

Cliente para manejar desde el explorador el TortoiseSvn -> http://tortoisesvn.net/downloads
Plugin para visual studio, el Ankh -> http://ankhsvn.open.collab.net/


fjfnaranjo

fjfnaranjo.com - Creating entertainment - Creando entretenimiento
fjfnaranjo [4t] gm4il [d0t] c0m (mail y msn)

IDandT

En mi caso uso el AnkhSVN.

Como hosting, para un proyectillo chorra con un colega usamos http://www.xp-dev.com/ que da 200mb de espacio en las cuentas free.

De todas formas nada te impide montar un subversion en local o lan.






Stratos es un servicio gratuito, cuyos costes se cubren en parte con la publicidad.
Por favor, desactiva el bloqueador de anuncios en esta web para ayudar a que siga adelante.
Muchísimas gracias.