2010-08-04 15 views
5

Qui ho un repository mercurial/hg del progetto perl qui con molti moduli. Ora, mi sono reso conto che alcuni dei moduli, una branca di moduli, non si adattano più a questo progetto ma sarebbero più adatti in un altro progetto.mercurial: "Clonazione" di un solo file da un repository a un altro?

Quindi, è possibile "clonare" questi moduli dal repository1 al mio altro repository2 mantenendo la cronologia delle revisioni di questi moduli e allo stesso tempo contrassegnando i moduli in repository1 come "rimossi"?

Penso che sia possibile con un numero di passaggi. Ma penso che clonare l'intero repository1 e poi rimuovere tutti i file non necessari ingombrerei il mio nuovo repo2 con molte cronologie di revisione non correlate. Tuttavia, come comprendo i comandi "clone" e "pull" nessuno dei due è adatto a clonare solo una porzione di un altro repository, giusto? Oppure è possibile "spostare" un file da un repository all'altro? Per come la vedo io è l'analogia di ciò che voglio fare ..

risposta

5

Assolutamente! Dai un'occhiata all'estensione Convert, in particolare alla sezione Mercurial-to-Mercurial che dovrebbe fare esattamente quello che vuoi.

Dopo aver diviso i moduli, è possibile utilizzare hg forget, hg remove per rimuoverli dal repository originale oppure utilizzare ancora hg convert per creare un nuovo repository senza di essi.

+0

La sezione da Mercurial a Mercurial è esattamente ciò di cui ho bisogno. Grazie! – isync

Problemi correlati