mercurial client - Come diramarsi con TortoiseHG




portable sourcetree (5)

Ho scaricato TortoiseHg 1.0 per la valutazione. Per la vita di me non riesco a capire come fare un ramo. Sembra capire i rami (ad esempio nel suo browser di repository) ma non riesco a trovare il modo di creare un ramo. Questo sembra una capacità così fondamentale, poiché i vantaggi spesso spinti dal DVC sono le ramificazioni leggere.

Ho cercato su Google e non ho potuto trovare molte discussioni su questo argomento (almeno per le versioni recenti), quindi devo presumere che mi manchi qualcosa, giusto?

Aggiornamento: ho quindi contrassegnato la risposta di Chad Birch qui sotto per rispondere al problema del "nuovo ramo". Come indica correttamente, fai un commit e poi fai clic sul pulsante branch per aprire la finestra di dialogo di manutenzione del ramo, che è dove crei nuovi rami. Mi piacerebbe che ci avessero dato un'opzione di menu contestuale per questo. Una volta che hai ramificato, la prossima domanda naturale è come unire e questo non è ovvio. Si scopre che l'opzione è sepolta nel repository explorer. È necessario selezionare la testa di un altro ramo, fare clic con il tasto destro e selezionare "Unisci con ...".


Answers

Per avviare una nuova filiale con TortoiseHg premere Commit ... quindi, sopra Commit message premere Branch, quindi "Open new named branch:"


Il più delle volte in mercurial, clone il repository per creare un branch.

È quindi possibile unire i repository separati una volta apportate le modifiche e le commit.

Potrebbe sembrare che occuperebbe molto spazio su disco, ma sulla maggior parte dei sistemi operativi, Mercurial realizzerà collegamenti fisici invece di copiare i file. In ogni caso, lo spazio su disco è normalmente economico, e poiché è locale è piuttosto veloce.

Se ci pensate, ogni "checkout" (in terminologia svn) o "clone" (in terminologia mercuriale) è in realtà un ramo che verrà probabilmente ricomposto in modo che abbia senso che i cloni siano il modo comune di creare succursali.


Volevo solo aggiungere che per spingere un nuovo ramo nel repository remoto c'è una casella di controllo nella scheda Sincronizza in Opzioni di "Consenti push di un nuovo ramo" - devi ricordarti di spegnerlo subito dopo.


Come mostrato nei documenti , tutto quello che dovresti fare è semplicemente cliccare sul pulsante branch: default vicino alla parte superiore della finestra di commit e passare a un nuovo nome di ramo.


Avevo un ramo che non volevo, ma ho scoperto che non riuscivo a unire il ramo (o era molto difficile per me capire come unire) perché conteneva un conflitto basato su una modifica del case del nome del file.

In definitiva, ho deciso di hg commit --close-branch . Dal momento che il ramo era esistito solo sul mio repository locale, e non il repository da cui ero stato clonato, il successivo hg push non si è nemmeno preoccupato di spingere il ramo chiuso verso il master repo! Molto conveniente. A quel punto, tutto quello che dovevo fare per eliminarlo del tutto era cancellare il mio repo locale e ri-clonare dal "master".





mercurial tortoisehg