Vuoi mantenere le modifiche correlate insieme. Ad esempio, se implementi una relazione bidirezionale e aggiungi colonne / tabelle a relazioni AR sufficienti, desideri mantenerle in una sola migrazione.
Se le modifiche nello schema non sono correlate tra loro (parti di caratteristiche diverse, ad esempio) è meglio tenerle in migrazioni separate.
Faccio un esperimento mentale quando non sono sicuro. Provo a rompere la migrazione per i pezzi più piccoli possibili e poi a controllare se la mia funzione funziona ancora se prendo solo uno dei pezzi. Se è probabile che quel pezzo non appartenga a questa migrazione.
Il tuo aspetto mi sembra diviso in due migrazioni. Sembra che tu abbia due caratteristiche qui. Uno riguarda l'aggiunta di programmi per i giocatori e l'altro per l'aggiunta di allenatori ai programmi.