Da una prospettiva "puristica" Mercuriale, Mike ha ragione - ha spinto i changeset fuori dal vostro controllo. Ma, in pratica questa è spesso una prospettiva troppo rigida.
In opposizione a ciò che Mike ha detto, la rimozione dei changeset già spinti potrebbe essere un'opzione. Dipende se si ha il controllo sul repository centrale (da spogliare anche lì) e sulla dimensione della propria squadra/comunità e su come è organizzata.
Se sai per certo che nessuno ha ancora tirato i tuoi brutti cambiamenti, basta rimuovere il tuo repository locale e il repository centrale, la cronologia cancellata.
Se c'è una possibilità che qualcuno ha tirato già i tuoi gruppi di modifiche cattivi, devi avere striscia repo locale e centrale, nonché e che avrebbe dovuto notificare a tutti i membri del team che spingono per mettere a nudo i cattivi di modifiche nei loro locali pronti contro termine anche (o per recedere dal repository centrale spogliato). Se sei fortunato, ognuno fa quello che dici. Altrimenti i changeset finiranno di nuovo nel repository centrale, prima o poi.
La linea di fondo è che lo stripping potrebbe essere una soluzione per casi come il tuo - devi bilanciare i costi (sovraccaricare la tua squadra di lavoro extra) e il vantaggio (pulire la cronologia).
Un esempio pratico in cui i vantaggi superano il costo sarebbe se si aggiungessero per errore file binari di grandi dimensioni. In questo caso probabilmente ogni membro del team preferisce strisciare in modo sincrono invece di lavorare con un repository saltato.
UPDATE: È possibile utilizzare ganci laterali server per impedire changeset eliminati dal tornare in repository centrale - read more here.
fonte
2011-02-03 19:51:22
Il fieno è l'erba lunga che è stata tagliata e asciugata, usata come cibo per il bestiame. :-) –
Oltre a questo articolo è utile "[Trovare e risolvere errori] (http://hgbook.red-bean.com/read/finding-and-fixing-mistakes.html)". –