¿Control de versiones para desarrolladores independientes?

60

¿Crees que vale la pena usar el control de versiones si eres un desarrollador independiente, y si es así, por qué? ¿Guarda el repositorio en su propia computadora, o en otro lugar, donde pueda servir como respaldo?

    
pregunta vedosity 17.12.2010 - 00:28

8 respuestas

61

Si usa el control de fuente descentralizado (Mercurial o Git o Bazaar o lo que sea), obtiene ventajas sobre SVN / CVS que lo hacen fácil, útil y poderoso de usar en caso de que sea indiferente:

  1. Se compromete localmente : el directorio de su proyecto es su repositorio con el historial COMPLETO. Por lo tanto, no tiene que tener un servidor, se compromete directamente en su repositorio y puede tener varios repositorios en la misma computadora. ¿Usas una computadora portátil que abres para continuar trabajando en tus cosas? ¡Genial! No tiene que configurar un servidor y si lo necesita más tarde, es fácil y simplemente "empuja" y "arrastra" los cambios entre los repositorios.
  2. Está hecho para facilitar la experimentación : a menudo es necesario tener una idea acerca de una característica sin código contaminante. Con SVN y CVS, ya puede usar un sistema de bifurcación y deshacerse de la bifurcación si la función no es tan buena como quería. Pero si desea combinar la función con la versión troncal, tendrá muchas sorpresas difíciles de solucionar. Git, Mercurial y Bazaar (al menos) hacen que las combinaciones y las sucursales sean realmente fáciles. Incluso puede simplemente duplicar un repositorio, trabajar en él algún tiempo, seguir cometiéndolo y eliminarlo o empujar sus cambios en el repositorio principal si lo desea.
  3. Flexibilidad de organización : como se señaló anteriormente, ya que tiene repositorios que organiza según sus necesidades, es fácil comenzar solo y permitir que otras personas trabajen con usted cambiando su organización. No se impone ninguna organización, así que solo tienes que configurarlo y voilà. A menudo simplemente presiono / jalo cambios entre mis propias computadoras (computadora portátil / computadora de escritorio / servidor) y todavía estoy solo en mis desarrolladores. Utilizo Mercurial y eso me ayuda a duplicar mi trabajo, pero también a trabajar en funciones que pensé en mi computadora portátil, luego continúo trabajando en otras funciones de mi escritorio, luego presiono los cambios de mi computadora portátil o servidor y fusiono todo el escritorio + portátil y lo puso (como respaldo y futuro repositorio de trabajo en equipo) en mi servidor.
  4. Ayuda a configurar las copias de seguridad : si configura un repositorio central (en GitHub si es público, o en un repositorio privado en BitBucket) puede escribir fácilmente un script que se ejecutará cada vez que se inicie una computadora y luego pase dicho script a sus amigos para que realice copias de seguridad automáticas de su trabajo con regularidad. Es lo que estoy haciendo, así que ahora estoy seguro de que no será fácil perder mi trabajo.

De hecho, actualmente, no tiene excusa para no usar una herramienta de fuente de control para cualquier proyecto. Porque son más potentes y flexibles que antes y se adaptan a sus necesidades.

    
respondido por el Klaim 17.12.2010 - 00:37
34

el control del código fuente es completamente inútil para los desarrolladores independientes, porque como todos sabemos:

  • los desarrolladores independientes nunca cometen errores
  • los desarrolladores independientes nunca realizan revisiones que no funcionan
  • los desarrolladores independientes nunca tienen más de una versión, por lo que no tienen uso para sucursales
  • los desarrolladores independientes nunca se preocupan por lo que cambiaron ayer o la semana pasada
  • los desarrolladores independientes nunca, nunca necesitarán copias de seguridad

Llámame "desarrollador dependiente": los repositorios de Mercurial se reproducen fácilmente entre mi computadora de escritorio, computadoras portátiles, unidades de respaldo USB y bitbucket.org. Me he vuelto dependiente, y me gusta que sea así.

    
respondido por el Steven A. Lowe 17.12.2010 - 03:45
21

¿Por qué no?

Soy un desarrollador en solitario y uso BitBucket y Mercurial para mis proyectos personales. Tener la capacidad de revertir y bifurcar tu código es demasiado bueno para dejarlo pasar.

    
respondido por el Terence Ponce 17.12.2010 - 00:39
1

Encuentro valor en ello, personalmente. Todos mis proyectos están registrados en los repositorios git (todos los cuales mantengo en varias máquinas en caso de una falla de hardware). Las funciones más útiles son las bifurcaciones (para que pueda realizar un experimento que ensucie con la mitad de mi base de código, y no me preocupe por explotar algo de forma permanente) y revertir (que es básicamente deshacer el uso de esteroides; en caso de que encuentre algo error que está fuera del rango normal de deshacer).

    
respondido por el Inaimathi 17.12.2010 - 00:40
0

Sí.

Incluso los desarrolladores individuales necesitan a veces ver el estado de su código de una revisión anterior. Y siempre es una buena idea hacer una copia de seguridad de todo lo importante, y eso se aplica a todas las personas.

    
respondido por el whatsisname 17.12.2010 - 00:38
0

Sí. Es muy muy útil. Mi amigo Matt Gallagher publicó este excelente artículo sobre este mismo tema hace unos días en su blog de desarrollo iOS / MacOS" Cocoa With Love ".

El artículo es Mac & Centrado en Git pero cubre lo básico.

También te pueden interesar las siguientes preguntas de StackExchange (y sus respuestas).

respondido por el orj 17.12.2010 - 00:41
0

Vale la pena ?? ¡Debes! Si no usas Source Control, entonces no controlas tus fuentes, y eso es malo. No puede cambiar, no puede revertir, no puede hacer un seguimiento de los cambios: pasará horas intentando descubrir el error ficticio que acaba de introducir. Es mejor tenerlo en algún servidor respaldado, pero también puede utilizar su computadora y usar cualquier método de respaldo que encuentre apropiado.

    
respondido por el Assimiz 17.12.2010 - 01:40
0

Utilice absolutamente control de código fuente. Luego configure un servidor de compilación y automatice sus procesos de compilación y prueba. Trigger construye desde su código fuente de su repositorio central. He estado trabajando solo durante tres años de esta manera y es maravilloso.

    
respondido por el Dave Neeley 17.12.2010 - 08:08

Lea otras preguntas en las etiquetas