tag - tipos de etiquetas en git
¿Son los submódulos de git la única forma segura de tener copias de trabajo dentro de las copias de trabajo? (2)
Este es también un método de solución útil para trabajar con Heroku y rieles en situaciones en las que tiene complementos que necesitan ser versionados. Actualmente, Heroku no admite los submódulos de git, por lo que anidar copias de trabajo parece ser la mejor solución. En este caso, no querría agregar el directorio de complementos a .gitignore, ya que en este caso no podrá cargar sus complementos al enviar a heroku, pero se la vi. Con suerte, Heroku eventualmente apoyará los submódulos de git.
En mi caso, tengo un programa que analiza los archivos de entrada de datos y produce otros archivos de salida de datos. Quiero controlar la versión del programa, y quiero controlar la versión de los archivos de datos y, como cuestión de preferencia, quiero tener la copia de trabajo de los archivos de datos dentro de la copia de trabajo del programa. Quiero que el programa y los datos se controlen por separado para reducir el "ruido". El programa no tiene una dependencia de los archivos de datos.
Si uso los submódulos de git, entonces, cuando suceden cosas dentro del directorio de datos (creo que las actualizaciones confirmadas), el control de versión del programa indica que hay una actualización con el submódulo. Lo que sería útil si el programa dependiera de los datos, pero no lo es.
En tal escenario, ¿es posible tener una copia de trabajo dentro de otra copia de trabajo sin usar los submódulos de git?
Es posible simplemente "anidar" copias de trabajo en Git. Por lo tanto, si clona el repositorio de su programa, dentro de él, haga un clon de sus archivos de datos y podrá trabajar con ellos de manera independiente. Cuando Git realiza operaciones de archivo, busca el árbol de directorios en busca de un directorio .git
, por lo que las operaciones de Git realizadas en el repositorio de datos no afectarán al repositorio de programas. Si hace esto, es posible que desee agregar el nombre del directorio de datos a .gitignore
para reducir el ruido del repositorio del programa.