Personalmente, non penso che sia una buona idea usare un sistema di versione del controllo sorgente per archiviare i file di backup, perché il controllo della versione GIT è progettato per file di dati, non per file binari o dump come un file di backup di backup MySQL . Il fatto che puoi farlo non significa automaticamente che dovrebbe farlo. Inoltre, il repository, considerando un nuovo backup del database per ogni nuovo commit, crescerà notevolmente, utilizzando un sacco di spazio su disco e le prestazioni di GIT ne risentiranno, risultando in un lento sistema di controllo del codice sorgente.
Per me va bene eseguire una strategia di backup e avere sempre pronto un file di backup quando è necessario ripristinare il database quando qualcosa nel codice va storto, ma gli strumenti di controllo del codice sorgente non vengono creati per memorizzare dati binari.
Per questi motivi, non vedo alcuna utilità nell'archiviazione dei file di backup per il giorno 1 e per il giorno 2, quindi vedo le differenze tra i due file di backup. Richiederà molto lavoro extra e inutile. Invece di utilizzare GIT per archiviare i backup del database quando si esegue il commit di nuovo codice, archiviare i backup del database in un percorso diverso, separati da data e ora e inserire nel codice qualche riferimento ai nuovi backup del database creati per ciascuna versione, utilizzando i tag, come qualcuno ha già suggerito.
La mia nota finale sui backup del database e GIT : un amministratore del database, quando ha bisogno di ripristinare un database perché alcuni dati sono andati persi, non ha bisogno di controllare le differenze tra il file di backup per il primo giorno e il file di backup per il secondo giorno, ha solo bisogno di sapere quale è l'ultimo file di backup che gli consentirà di ripristinare il database, senza errori e perdite di dati, riducendo i tempi di fermo. In effetti, il compito di un amministratore di database è di rendere i dati disponibili per il ripristino il più presto possibile, quando il sistema, per alcuni motivi, fallisce. Se si archiviano i backup del database in GIT, collegati ai propri commit, non si consente all'amministratore del database di ripristinare rapidamente i dati, poiché i backup sono limitati ai punti nel tempo memorizzati nel repository GIT e per ridurre il tempo di inattività del sistema, perché le prestazioni del tuo repository GIT saranno drasticamente ridotte con molti dati da archiviare.
Quindi, non è consigliabile archiviare i backup utilizzando GIT, utilizzare invece una buona soluzione software di backup (ce ne sono alcuni qui ), che fornirà più granularità e ti consentirà di mantenere i tuoi dati al sicuro e al sicuro e di rendere il ripristino dei dati semplice e veloce in caso di disastri.