Sono sempre d'accordo con il mantra di Mercurial 1 , tuttavia, ora che Mercurial viene fornito in bundle con l'estensione di rebase ed è una pratica popolare in git, mi chiedo se possa davvero essere considerato come una "cattiva pratica", o almeno abbastanza brutta da non usare. In ogni caso, sono consapevole del fatto che il ribellarsi sia pericoloso dopo aver spinto.
OTOH, vedo il punto di provare a impacchettare 5 commit in uno solo per renderlo più accattivante (specialmente in un ramo di produzione), tuttavia, personalmente, penso che sarebbe meglio essere in grado di vedere i commit parziali ad un funzione in cui è fatta qualche sperimentazione, anche se non è così elegante, ma vedere qualcosa come "Ho provato a farlo in modo X ma non è ottimale come Y, dopotutto, facendo Z prendendo Y come base" IMHO avrebbe un buon valore a quelli che studiano il codice base e seguono il pensiero del programmatore.
Il mio punto di vista molto opinato (come in ottuso, viscerale, parziale) è che i programmatori amano rebase per nascondere gli errori ... e non penso che questo sia positivo per il progetto.
Quindi la mia domanda è: hai davvero trovato utile avere tali "commit organici" (cioè la storia non controllata) nella pratica? o, al contrario, preferisci imbattersi in commessi ben confezionati e ignorare il processo di sperimentazione dei programmatori? ?; quale dei due hai scelto, perché questo funziona per te? (avere altri membri del team per conservare la cronologia, o in alternativa, ridistribuirla).
1 per Analisi di Google DVCS , in Mercurial "La storia è sacra ".