Io corro esperimenti su un modello, con un flusso di lavoro come questo:Come organizzare una serie di esperimenti scientifici che utilizzano Git
- Io lavoro in un modello (un software in Python)
- cambio alcuni parametri ed eseguire un esperimento
- Quindi, memorizzerò i risultati dell'esperimento (come un sottaceto).
- Quindi analizzerò i risultati (in salamoia) utilizzando un altro software (quaderni IPython).
Sto usando Git and Scientific Reproducibility come guida, dove i risultati di un esperimento sono memorizzati in una tabella lungo l'hash del commit. Vorrei invece memorizzare i risultati in una directory, nominando le directory come hash.
Pensando al controllo di versione, vorrei isolare lo code
e lo analysis
. Ad esempio, un cambiamento di colore in una trama in un notebook IPython in analysis
non dovrebbe cambiare nulla in code
L'approccio che sto pensando:
Una struttura di directory in questo modo:
model
- code
- simulation_results
- a83bc4
- 23e900
- etc
- analysis
e diversi repository Git per code
e analysis
, lasciando simulation_results
di Git.
Eventuali commenti? Una soluzione migliore? Grazie.
Quali numeri esadecimali in simulazione_risultati dovrebbero significare? (Suppongo che siano degli ID commit, ma mi manca qualche contesto.) –
I sottomoduli sono un buon approccio. Ho modificato e dettagliato la mia risposta. – VonC
Ciao Josef, Sì, in effetti i numeri esadecimali sono ID di commit. – Victor