2011-11-14 13 views
8

Mi è stato assegnato un clone di un repository Mercurial e non so su quale versione di Mercurial sia stato creato il repository. Tutti i repository Mercurial sono retrocompatibili? Cioè posso installare l'ultima versione di Mercurial sulla mia macchina ed essere in grado di interagire con il repository OK o potrebbero esserci dei problemi che non conoscono la versione di Mercurial in cui è stato creato il repository?La versione di Mercurial è importante?

+0

quando si dice " Mi è stato dato un clone ", intendi che hai eseguito" hg clone "o che qualcuno ha zippato una directory e l'ha inviata a te? –

risposta

4

scrivo post sul blog su questo argomento:

Poco attualmente nuova versione HG può operare su vecchi repository a livello locale, ma tornare frase falsa.

Il protocollo filo non cambia fra le versioni HG in modo da poter clone, tirare, spinta da qualsiasi versione di HG a qualsiasi versione di HG che corrono sul http: // e ssh: // Protocolli.

Se si accede a un repository sul vostro filesystem locale e non è supportato, si ottiene un messaggio di errore del tipo:

 
abort: requirement 'fncache' not supported! 

Questa controllato da parole chiave da richiede file:

 
    $ cat repo/.hg/requires 
revlogv1 
store 
fncache 
dotencode 
+1

Quando si utilizza SSH, è importante la versione di Mercurial sul server. Quindi puoi usare una vecchia versione localmente per parlare con un nuovo repository Mercurial sul server. Ho modificato la tua risposta per riflettere questo. –

+0

@ MartinGeisler Molte modifiche per la correzione. È difficile tenere conto di tutte le cose quando cerchi di risparmiare tempo personale quando rispondi a SO. – gavenkoa

+0

Prego, sono felice di migliorare una buona risposta! –

3

Gli sviluppatori di Mercurial vanno a great lengths per assicurare la compatibilità con le versioni precedenti.

Le modifiche che potrebbero influire sulla compatibilità sono elencate anche in UpgradeNotes.

Problemi correlati