Cualquiera sea su primer instinto, ¡no use una unidad flash! Lo que necesita es un sistema SVN, algo para administrar su código.
SVN
¿Qué son estos sistemas? Son servidores y programas cliente que se utilizan para confirmar cada versión de código que escribe. Si realiza un cambio o corrige un error, confirma una versión en el servidor SVN, enumerando lo que se hizo. El cliente copia todos los archivos modificados y el servidor mantiene un registro de ellos. Puede revisar su historial de versiones y ver todas las confirmaciones anteriores, obtener una copia de ellas e incluso ver qué archivos se modificaron en cada etapa. Algunos clientes también le dan la posibilidad de ver un ‘diff’, una comparación de lo que es diferente entre 2 archivos de diferentes versiones. No hace falta decir que esto es muy útil no solo para mantener una copia de seguridad, sino también para localizar errores que surgen. Puede volver a las versiones anteriores y ver cuándo comenzó a aparecer el error, lo que ayuda a reducir la búsqueda de dónde está el error. Otra buena característica es la capacidad de bifurcar su código, de esa manera puede trabajar en una nueva característica mientras mantiene intacta la base del código principal.
- ¿Por qué utilizamos la interfaz de bucle invertido?
- Cómo no quedar atrapado al descargar una gran cantidad de datos en una red de área local
- ¿Cuál es la mejor forma interactiva de aprender redes informáticas?
- ¿Cuáles son las velocidades de red típicas y más rápidas posibles entre el almacenamiento de red y un nodo de ejecución?
- ¿Hay algún uso del comando ping que no sea verificar la conectividad?
Dónde ir
En estos días PUEDES iniciar tu propio servidor SVN / Mercurial / Git, pero hay sitios web que alojan servidores de forma gratuita. Echa un vistazo a GitHub y Bitbucket. Puede alojar varios proyectos allí y compartirlos con otros usuarios para que puedan colaborar en su proyecto.
Apéndice
Si tiene algún interés en aprender más sobre programación, visite la Escuela Holberton. Te enseñarán las mejores prácticas y te darán una educación en varios idiomas adecuados para aplicaciones de escritorio, desarrollo web y más. Tampoco harás ejercicios simples de aprendizaje de libros: te asignan proyectos complejos y te dan las herramientas para completarlos.