Ho un repository Mercurial centrale contenente una cronologia clonata da un repository SVN utilizzando hgsubversion. Ho richiamato i commit aggiuntivi apportati al repository SVN poiché il repository hg originale è stato clonato; questi sono attualmente nel ramo predefinito.Utilizzo di Mercurial, come si ottengono le modifiche dall'impostazione predefinita in un ramo denominato?
Ho anche un ramo denominato. Ho clonato questo ramo (usando hg clone -b mybranch
) sul mio sistema locale. Ora voglio prendere le modifiche che esistono solo in modo predefinito e renderle disponibili nel mio ramo nominato. Il modo ovvio che vedo per farlo è quello di fare un hg update mybranch
sul repository, quindi hg merge default
e commit. Questo sembra pericoloso: se mi dimentico di aggiornare di nuovo al valore predefinito dopo aver terminato, tutte le future estrazioni da SVN attiveranno le modifiche in mybranch.
Ho anche considerato che forse non avrei dovuto specificato mybranch quando ho clonato il repo, ma clonato l'intero pronti contro termine e appena aggiornato a mybranch localmente. In questo modo, posso inserire le modifiche di default sul mio clone locale e fare l'unione lì.
Qual è la risposta giusta qui? Fatelo sul repository condiviso e state attenti? Clona tutto e gestisci i rami localmente? O c'è una soluzione più semplice che mi manca?
L'unione sembra perfetta, non ho proprio il problema. * hgsubversion * sembra essere a conoscenza dei rami SVN, quindi quando si tira, dovrebbe mettere * SVN-trunk * cambia in * default * e * SVN-mybranch * nel proprio ramo * mybranch *. Se si uniscono e rimangono su * mybranch *, la punta di * mybranch * cambia davvero se il lato remoto ha solo cambi di linea? Il pull dovrebbe funzionare indipendentemente dalla revisione della tua copia di lavoro. –
La mia preoccupazione riguardava le modifiche dirette all'archivio principale e i rischi associati a ciò. Naturalmente, nel mondo DVCS, tutti i repository sono essenzialmente uguali, quindi è probabilmente solo il mio bias VCS client-server. –