software senior sencillo programador programa pasos para hacer desde crear computadora como cero version-control project-management sharing

version control - senior - Múltiples programadores en desarrollo de software. ¿Cómo trabajamos en el mismo código y nos aseguramos de que esté siempre actualizado?



pasos para crear un programa de computadora (9)

"o algún tipo de cliente compartido que podríamos usar"

El control de código fuente es probablemente el enfoque recomendado oficialmente, sin embargo, la forma más sencilla de compartir archivos es instalar algo como DropBox .

Se registra para obtener una cuenta gratuita de 2 GB con un nombre de usuario / contraseña compartida entre usted y su amigo. A continuación, instale el cliente DropBox en la PC de usted y de sus amigos y use la cuenta compartida.

Una vez que se ejecuta Dropbox crea una carpeta en Mis documentos llamada "Mi Dropbox". Ahora, todo lo que haga en esta carpeta, como crear, editar, eliminar archivos y carpetas, se sincronizará automáticamente con la carpeta "Mi Dropbox" en la PC de sus amigos y viceversa. El acceso a Internet es todo lo que se requiere.

También obtiene historial y revisiones de sus archivos, por lo que puede deshacer y restaurar a versiones anteriores si es necesario. Si ambos trabajan en los mismos archivos a la vez, al igual que el control de fuente, deberá fusionar manualmente los archivos, pero Dropbox guarda una "copia en conflicto" en este caso.

He usado Dropbox por casi un año y estoy muy contento con su facilidad de uso. No trabajo para Dropbox ni tengo nada que ver con ellos aparte de ser un usuario feliz.

Un sistema de control de fuente "real" proporciona principalmente copias de seguridad automáticas, capacidad para volver a versiones anteriores y managmenet de múltiples usuarios que editan el código fuente, pero también lo hace Dropbox.

Esto parece algo que debería saber a estas alturas, pero por alguna razón no lo hago. Tampoco tengo mucha suerte buscando el tema.

Un amigo y yo estamos empezando un proyecto simple juntos, lejos del trabajo, ambos somos muy jóvenes en el mundo de la programación y queremos realizar un proyecto educativo simple para nuestro tiempo libre ... Mi pregunta es, queremos ser capaces de trabajamos en el mismo proyecto, y los archivos se actualizan en consecuencia, sin que tengamos que compartir archivos constantemente. Estoy seguro de que existe un software que existe solo para este propósito, o algún tipo de cliente compartido que podamos usar. El problema es que no sé por dónde empezar a buscar.

Algunos consejos simples sobre cómo o qué usar para ayudar a que este proyecto avance sin problemas sería grandioso. Y es una gran parte de por qué lo estamos haciendo en primer lugar.

Actualizar:

Después de algunas investigaciones me decidí por Tortoise SVN. El simple clic derecho en el complemento para que Windows actualice / confirme los archivos a su servidor alojado es muy fácil y fácil de usar.

Aclaración adicional

Han pasado bastantes años desde que hice esta pregunta, y ¡he aprendido mucho! Si está aquí con la misma pregunta, le aconsejaría que busque "control de fuente". Originalmente acepté una respuesta sugiriendo subversión, e incluso afirmé que me decidí por "Tortoise SVN" como mi cliente conectado a la subversión. Al igual que todas las cosas, nos adaptamos a medida que aprendemos, y el principal control de fuente que uso ahora es Git. Tiene una curva de aprendizaje más grande, pero honestamente puedo decir que es mucho más poderosa.


El tipo de software que está buscando es el control de fuente (también llamado control de revisión). Es un tema enorme, pero comenzaría buscándolo en Wikipedia y luego buscaría un tipo de control de fuente que funcione con el lenguaje y las herramientas que está usando. (Ejemplo: Team Foundation Server como una opción para Visual Studio, SVN para una buena solución completa, etc.)

Eventualmente va a pedir sugerencias sobre qué herramienta de control de origen usar. Para nuestro equipo, utilizamos SVN (también conocido como SubVersion), que es una muy buena solución gratuita de código abierto que funciona con casi cualquier cosa.

Enlace de Wikipedia:

http://en.wikipedia.org/wiki/Revision_control


Research Source Control. Aquí hay una buena introducción:

http://www.ericsink.com/scm/source_control.html

Muchos pueden ser alojados en línea gratis o por una pequeña tarifa para que usted y su pareja puedan colaborar a través de Internet a menos que se encuentren en una situación en la que tengan un servidor compartido y luego puedan seguir esa ruta con muchos clientes de control de origen (como SVN con tortuga y tal). De lo contrario, GitHub (no el único) es un sistema de control de fuente distribuida. Puede ser un poco abrumador al principio, pero es un ejemplo.


Si está dispuesto a aprender un poco sobre Git, puede alojar su trabajo en github.com y seguir trabajando en él por separado.


en los últimos 6 meses, me mudé a git y estoy muy contento con él. pero en general, cvs | svn | git son los SCM de fuente abierta más comunes (gestión de código fuente) y cualquiera de ellos debería ser capaz de satisfacer sus necesidades.


Hay dos cosas que son importantes cuando dos o más desarrolladores trabajan en el mismo proyecto. Primero están las herramientas utilizadas, y el segundo es el proceso acordado.

El uso de la herramienta, en tu caso es muy simple. Elija un sistema de control de versiones y aprenda a usarlo. Las opciones son muchas, pero el factor más importante es el soporte de la herramienta. Por ejemplo, las herramientas tipo Tortuise son geniales para los usuarios de Windows (TortuiseSVN, ToruiseCVS, TortuiseHg) ya que se integran en el shell de Windows y le permiten ver qué pasó con cada archivo y directorio al aplicarles diferentes íconos (signo de exclamación rojo para cambiar, verde ok y etc.).

La segunda parte más importante es el proceso. La mayoría de los equipos se rompen con eso, y lleva tiempo adoptar uno para todos. Usted y su pareja deben ponerse de acuerdo sobre el mismo proceso y ambos deben seguirlo.

El proceso incluirá la organización básica de la carpeta, qué se colocará y dónde, cómo y cuándo se comprometerá / se realizará la compra y qué tipo de código va a poner.

En mi opinión, hay dos cosas importantes aquí:

  1. El código en el repositorio debe ser siempre capaz de compilar, para que el otro tipo continúe trabajando sin problemas

  2. Todo el mundo necesita saber qué colocar y dónde, por ejemplo, se elegirá una carpeta para el código fuente y la otra para la base de datos, etc.

Aquí hay un ejemplo de un proceso simple:

  1. Instale un servidor de repositorio (svn, mercuiral, etc.). Para ti, la única diferencia es el soporte de herramientas.
  2. Acordar una estructura de repositorio común (Documentos, Fuente, Extras)
  3. Actualización al comienzo de cada día
  4. Comience a menudo, antes de cada actualización de compromiso desde el repositorio
  5. Al final de cada día, cometer

¡Parece que necesitas control de fuente! ¿Has visto Subversion (SVN) en absoluto? Hay un impresionante cliente de Windows llamado TortoiseSVN . Ambos son gratuitos y de código abierto.

Usted configuraría un servidor Subversion en una de sus máquinas, o en un servidor web en alguna parte. Luego, ambos envían sus cambios al servidor a intervalos regulares, y el servidor gestiona cosas como la revisión, los comentarios que adjunta a confirmaciones, etc. Con el cliente, puede hacer cosas como ver la diferencia entre las revisiones y los cambios de fusión (de forma automática o manualmente) dentro de los archivos. También hace que sea sencillo agregar otros desarrolladores a tu proyecto, solo dales acceso a tu servidor de Subversion. Hay complementos SVN para Eclipse y Visual Studio , o puede usar TortoiseSVN, que puede ejecutarse de forma autónoma en la línea de comandos y se integra con el shell de Windows (ver a continuación).

Integración de shell TortoiseSVN http://olex.openlogic.com/wazi/wp-content/uploads/2009/03/create_repo_tortoisesvn.png

Lo que más me gusta de TortoiseSVN es que es totalmente independiente del lenguaje o del IDE, y puedo usarlo para proyectos Java de Eclipse, proyectos .NET de VS2008 o material de desarrollo de controladores en C / C ++.

Tenga en cuenta que la herramienta SubWCRev que se envía con TortoiseSVN también expone una interfaz COM que le permite hacer cosas geniales, como comprobar programáticamente quién realizó la última confirmación y cuándo, cuál es el último número de revisión, etc. Menciono esto porque no hay mucho información sobre esto aparte de en los documentos de TortoiseSVN, y me ha sido realmente útil escribir un complemento VS2008 que uso en mis proyectos .NET para sincronizar automáticamente el número de revisión y aumentar el número de compilación.

Varios sitios ofrecen acceso gratuito al repositorio SVN para proyectos de código abierto (o acceso pago para productos comerciales / de código cerrado), como Google Code y Sourceforge . Estos repositorios en línea también pueden ser realmente útiles para el trabajo de proyectos, especialmente si usted es un estudiante que trabaja en un proyecto grupal.


La respuesta simple es que quieres algún tipo de software de control de revisiones.

La respuesta más compleja es que tener control de revisión es mucho más fácil que usarlo o usarlo bien.

Si está comenzando, elegir una herramienta que sea fácil de usar es la clave. Subversion es una buena opción porque tiene algunas implementaciones de GUI geniales, pero aún proporciona mucha potencia y flexibilidad una vez que empiezas a ingresar en el nivel de la línea de comandos.

Sin embargo, el sistema de control de revisiones que elija es menos importante que cultivar los hábitos de uso que le permitirán aprovechar sus herramientas. Los desarrolladores experimentados que usan las mejores herramientas pueden aún enredarse en repositorios de origen mal diseñados o mal administrados.

Algunas cosas para pensar:

  • Si no actualiza su repositorio de manera frecuente y sistemática como rutina, no le servirá de mucho cuando lo necesite.

  • Aprender lo que diferentes personas tienen para decir acerca de las mejores prácticas es útil hasta cierto punto, pero a veces el factor más importante es simplemente que existe un estándar, y que todos los involucrados lo entienden y lo aceptan.

  • La organización Repo depende en gran medida de la ruta.
    La configuración y el desmontaje son baratos cuando su proyecto está comenzando. No tenga miedo de ser exigente con la estructura organizacional al principio. Puede ser el único momento en que puede ser.


Esta es una pregunta muy simple pero importante. Esta es una pregunta sobre el control de código fuente. Mi propia experiencia me dice que evite las soluciones principales de Dropbox y Co, ya que no son muy amigables con el código fuente.

Mirando tu publicación, quieres:

  1. Simple con fácil configuración y uso
  2. Compartir el código (navegación y modificación)
  3. Ver quién ha modificado qué y cuándo

Recomendaría Git porque responde a los tres con la herramienta base Git y Github.com o Bitbucket.org .

CVS y SVN son pesados ​​y no tienen una interfaz web muy conveniente como Github o Bitbucket. Y a pesar de que era un gran admirador de CVS e hice movimiento a SVN, debo admitir que ahora están probando muy viejos en comparación con el nuevo Git y los sistemas similares.