Tengo una gran colección de scripts personales que me gustaría comenzar a versionar usando Git. He organizado previamente el código de la siguiente manera:¿Cuál es una buena manera de organizar una gran colección de scripts personales usando git?
~/code/python/projects/ (for large stuff, each project contained in an individual folder)
~/code/python/scripts/ (single file scripts all contained in this directory)
~/code/python/sandbox/ (my testing area)
~/code/python/docs/ (downloaded documentation)
~/code/java/... (as above)
Ahora voy a comenzar mi código de versiones usando git, para que pueda tener la historia y la copia de seguridad de todo mi código a un servidor remoto.
Sé que si estuviera usando SVN solo mantendría todo mi directorio "~/code/
" en un gran repositorio, pero entiendo que esta no es una buena manera de hacer cosas con Git.
La mayoría de la información que he visto en línea sugiere mantener todas las carpetas de proyectos en un solo lugar (como en, sin directorios separados para python o java) con cada proyecto que contiene su propio repositorio git, y simplemente tener un directorio "snippets" que contenga todo scripts/experimentos de un solo archivo que pueden convertirse en proyectos en una fecha posterior.
Pero no estoy seguro de cómo me siento acerca de la consolidación de todos mis directorios de códigos en un área. ¿Hay una buena manera de mantener intactos mis directorios de códigos separados, o no vale la pena el esfuerzo? Tal vez estoy solo conectado a los directorios de códigos separados porque nunca he sabido nada más ...
También (como nota al margen), me gustaría poder ver rápidamente una historia cronológica de todo mi proyectos y scripts. Entonces puedo ver qué proyectos creé más recientemente. Solía hacer esto manteniendo un número al principio de todos mis proyectos, 002project
, 003project
.
¿Hay manera automática o fácil de hacer esto en git sin tener que agregar un número a todos los nombres de proyecto?
Estoy abierto a cualquier consejo de organización práctica o filosófica que tenga. ¡¡¡Gracias!!!
¡Guau, gracias por la explicación detallada! Una pregunta sobre lo siguiente: "Cuando quiero lanzar un proyecto públicamente (en Github, por lo general), creo un nuevo repositorio, copio el código y lo sincronizo con Github. El repositorio de 'proyecto activo' está ahora sin relación con el repositorio monolítico ". Cuando crea este nuevo proyecto activo, ¿lo coloca fuera de su directorio personal/código /? Supongo que de lo contrario su repositorio de código intentaría agregar esta carpeta de proyecto cuando haga algo como "git commit -a". ¡Gracias de nuevo! –
@spooky note Sí, tengo mi repositorio de código personal en '~/code/mycode' y proyectos separados en' ~/code/{projectname} '- git no maneja repositorios-en-repositorios particularmente útil, aunque creo git debería ignorarlos cuando hagas 'git commit -a' (no estoy seguro) – dbr
¡Genial, gracias! Voy a seguir este método: parece más sencillo y más fácil de implementar que los submódulos. –