team systen en java---compartiendo un solo proyecto entre varios programadores
Hola amigos como estan soy nuevo en el desarrollo de programas con java, actualmente estamos desarrollando un proyecto para la universidad y somo un grupo de 5 personsa, mi pregunta es saber si hay alguna manera de que todos podamos programar al mismo tiempo sobre un mismo proyecto y que todos veamos los cambios que realiza otro programador, osea algo parecido al Team system de .net, estamos utilizando el netbeans no se si habra algun plugins para este.
espero puedan ayudarme, si alguien sabe de una herramienta por favor enviarme un mensage a mi mail el cual es : Jose_g709@hotmail.com
- Inicie sesión o regístrese para enviar comentarios
Subversion
No sé cómo sea el Team System pero pues si lo que estás buscando es un sistema de control de versiones, una opción es Subversion, otra es Git. CVS es muy viejo y no lo recomiendo.
team systen en java---compartiendo un solo proyecto entre varios
en realidad lo que estoy buscando es algo que nos permita programar a todos el mismo proyecto al mismo tiempo (osea cada uno en su maquina modificado partes del mismo proyecto el cual se encuentra en una maquina servidor)
partes == archivos?
No he visto ese software pero lo que describes suena a una pesadilla... dos o más programadores editando el mismo archivo de texto (código fuente) al mismo tiempo? Y uno ve los cambios que va haciendo el otro?
O se limita a que cada quien trabaje con distintos archivos del mismo proyecto?
Bueno todos esos problemas se solucionan con un sistema de control de versiones. Pero pues suerte con eso.
Control de Versiones
Lo que necesita es control de versiones, no que puedan todos estar editando los mismos archivos en tiempo real.
Amigo, investiga sobre SVN, permite tener el proyecto en un repositorio, el cual todos los programadores descargan y lo modifican a su antojo, luego SVN facilita la integración de lo que modificó cada quien.
Así como SVN hay más software para controlar versiones, como Git, Mercurial, CVS, Bazaar, pero SVN es el más estándar actualmente.
Saludos brother.
Javier Ramírez Jr.
Mercurial o Git
NetBeans tiene soporte nativo para Mercurial, no sé cómo ande el soporte para Git, pero en el peor de los casos lo pueden usar desde la línea de comandos. Tiene mucho mejor soporte para equipos distribuidos que SVN, están chavos, no se ensucien con CVS o CVS++, perdón, Subversion.
Saludos
Javier Castañón
partes != archivos
Un proyecto en VS se conforma por un archivo descriptor del mismo y un bonche de recursos en uno o más árboles de directorio.
Saludos
Javier Castañón
VS != Team system
He usado Visual Studio pero arriba mencionan un tal Team System, ese es el que nunca he visto (ni había oido mencionar siquiera; segun yo los mseros usaban la porquería esa de visual source safe).
Team Foundation
Team System es una edición de Visual Studio que utiliza algo llamado Team Foundation Server como gestor de proyectos, este último es pues una mezcla de control de versión, integración continua y otras cosas más... mucho mejor -aunque también mas pesado, requiere un Win-Server- que Source Safe, el cual desde 2005 lo están descontinuando y para el 2010 definitivamente desaparecerá, sustituido por una edición Basic del Team Foundation.
Re: team systen en java...
Como bien mencionan los compañeros, lo que solicitas básicamente se llama control de versiones, de hecho puedes incluso utilizar el Team Foundation Server (que es el que está detrás de las capacidades mencionadas de VS Team System), pero no es nada barato, ya que además de la licencia del mismo, tendrás que adquirir complementos como el de Teamprise (por citar un ejemplo, existen mas vendedores) que te permitan gestionar tus proyectos aprovechando mejor el TFS.
Así que le haría caso a las recomendaciones aquí vertidas sobre usar soluciones mas ad-hoc a Java. Una solución similar a TFS es TeamCity de Jetbrains. Mas Mercurial tiene muy buenos comentarios, lo mismo que Git.
Ya ya entrados en el tema. ¿Alguien conoce de alguna tabla comparativa SVN vs Git (y algunos otros)? Sería muy útil.
Saludos,
Willy Mejia
SVN y Git
Yo uso SVN y he usado Git un poquito. Antes usaba CVS, y pues definitivamente SVN es mucho mejor que CVS, con distintos medios para acceder al repositorio (WebDAV, ssh, por filesystem o por su propio protocolo) y un protocolo y APIs publicados para poder hacer clientes en distintas plataformas (como Java, el Subclipse, etc). Ahora además se puede cambiar su backend (que usa BerkeleyDB) por otra base de datos (aunque creo que no es muy recomendable). Pero sigue manejando un repositorio completamente centralizado. Para los proyectos donde lo uso, me ha resultado suficiente eso y cuando se necesita experimentar con algo se puede hacer un branch muy fácil. Pero a quienes no les gusta esto.
La diferencia principal que veo con Git es que sigues teniendo un repositorio central pero ahora no bajas nada más tu copia de trabajo sino que se copia todo el repositorio a tu filesystem. Y entonces puedes hacer cualquier cantidad de commits, updates, reverts, merges, etc en tu repositorio local, el cual después sincronizas con el central. Pero tu repositorio puede ser usado por otros usuarios como si fuera el principal, de manera que se permite la distribución de trabajo más granular.
Subversion permite hacer más cosas estando desconectado que CVS (donde tenías que tener acceso al repositorio para cualquier operación), y Git te permite hacer más cosas estando desconectado que Subversion.
Quiero mencionar que Git lo usé en un proyecto con pocos integrantes y era algo muy simple, y a mi me pareció demasiado enredoso su uso para algo que a mi parecer hubiera sido más simple llevar en SVN; sin embargo he notado que varios proyectos grandes están cambiando a Git (El kernel de linux se llevaba en BitKeeper y cambiaron a Git; OpenOffice está lentamente migrando a Git, Android, OLPC, Gnome, entre otros).