A volte trovo di avere un file che nel tempo è cresciuto fino a contenere più classi/funzioni/elementi di cui mi piace. È tempo di refactoring! Di solito in questo caso trovo che il mio unico file diventi più: stesso più molti altri file, ciascuno contenente segmenti distinti del file.Va bene "abusare" della funzionalità di rinomina di Mercurial per tracciare il movimento dei blocchi di codice?
Sfortunatamente, la creazione di questi nuovi file "interrompe" la cronologia un po '- è difficile dire che queste funzioni originariamente provenivano da un altro file. È anche peggio se ci sono state altre modifiche apportate al codice durante il refactoring.
Uno dei miei colleghi ha scoperto che poteva "abusare" della funzionalità rinomina facendo qualcosa di simile:
hg rename --after original_file new_file_1
hg rename --after original_file new_file_2
hg rename --after original_file new_file_3
hg add original_file
Il risultato è che ciascuno dei nuovi file si presenta come una ridenominazione con il resto del file rimosso e il file originale sembra aver perso i blocchi rimossi. Finora, questo sembra l'ideale. Tuttavia, sono preoccupato che questi rinvii multipli causeranno confuse fusioni lungo la linea.
C'è qualcosa di sbagliato in questo approccio "rinominare più volte"?
Fantastico! Grazie per la risposta dettagliata! –