2012-10-08 13 views
17

Ho creato il repository locale hg per il nuovo progetto: hg init ; hg addremove, quindi ho creato il repository upstream vuoto e ho inserito la prima versione qui: hg push https://remoterepo.Come impostare Mercurial a monte

Ora, voglio impostare quello https://remoterepo come predefinito a monte, quindi posso semplicemente fare hg push/pull senza darlo.

Mi ha sorpreso Google non mi ha dato una risposta diretta con "set mercurial upstream", e non ho trovato una risposta diretta anche qui a SO. Quindi, a beneficio di tutte le persone che usano SO come howto, qual è il modo giusto per farlo?

risposta

23

È possibile farlo con l'aggiunta l'URL a monte per /project/.hg/hgrc in questo modo:

[paths] 
default = ssh://[email protected]/repos/something 
upstream = ssh://[email protected]/repos/something_else 

e ora upstream è un alias per repo something_else che si può quindi tirare da o spingere a:

hg pull upstream 
hg push upstream 

Reference

hg help urls:

URL possono essere memorizzati nel file di configurazione con il percorso di uno pseudonimo nella sezione [percorsi] in questo modo:

[paths] 
    alias1 = URL1 
    alias2 = URL2 
    ... 

È quindi possibile utilizzare l'alias per qualsiasi comando che utilizza un URL (ad esempio hg pull alias1 verrà considerato come hg pull URL1).

due alias percorso sono speciali perché sono utilizzati come valori di default quando non non fornisci l'URL di un comando:

  1. predefinita
  2. default-spinta
+0

Aggiunta solo il 'default = ...' ha fatto il trucco per il mio caso specifico (usando hg pull/push senza argomenti extra), grazie. – hyde

+0

@hyde Lieto di aiutare :) –