Estoy usando un mongodb con una carpeta personalizada para save datos, pero esos datos no están sincronizados con github porque los files no cambian

Yo uso github para versionar mis files y me gustaría también versionar mi database, en este caso es solo para fines de testing.

Pero los files de la database creados por mongodb no se cambian, los files cambian los datos hace semanas: s por lo tanto, el github tiene datos antiguos.

Realmente no puedo entender por qué si estoy cambiando algunos datos en la database, el mongodb no guarda en un file … o al less el file debe haber cambiado de alguna manera …

MongoDB preasigna files de datos , que luego se llenan gradualmente. Tal vez es por eso que los cambios no se recogen adecuadamente.

Como un aparte, de todas las forms posibles de versionar una database MongoDB, no estoy seguro de que mantener el datadir en un repository Git sea la mejor manera de hacerlo.

Alternativas: ejecutar mongodump dará como resultado un BSON -dump de su database o colección, mientras que la ejecución de mongoexport dará como resultado un JSON o CSV . Ambos se pueden leer nuevamente con mongorestre y mongoimport , consulte la documentation .

Estos volcados pueden ser versionados usando tu herramienta favorita. Personalmente, cuando uso Git, podría versionar el volcado JSON, por ejemplo

 mongoexport --db mydatabase --collection mycollection > mycollection.json 

dará como resultado un file JSON, que contiene el contenido de la colección elegida (puede volcar toda la database si lo desea).

Algo adicional, si --csv y --fields fieldname1,fieldname2 , puede volcar un buen file CSV para leer con otro progtwig.