2013-10-01 5 views
5

Sono davvero felice che SourceTree abbia incorporato Mercurial. In occasione dispari vorrei eseguire un comando hg dalla CLI, comePosso usare la riga di comando hg incorporata in SourceTree?

hg status 

Al che ottengo

hg: command not found 

Posso apportare modifiche al mio percorso di ambiente per ottenere la linea di comando che lavora per la versione integrata, o devo installare e gestire un'istanza separata di Mercurial se voglio usare in modo accidentale la riga di comando?

Sto utilizzando SourceTree OS X versione 1.7.2

(Questa potrebbe essere una domanda superuser, ma ho pensato che questa comunità ha una migliore possibilità di conoscere e rispondere.)

risposta

1

Le bugie binari all'interno Il pacchetto SourceTree, nella cartella delle risorse, si chiama hg_local.

/Applications/SourceTree.app/Contents/Resources/mercurial_local 

Si potrebbe desiderare di alias da qualche altra parte (come /usr/local/bin) e rinominarlo in movimento:

ln -s /Applications/SourceTree.app/Contents/Resources/mercurial_local /usr/local/bin 

potrebbe essere una migliore idea di utilizzare alcuni package manager ed installare Mercurial dai loro repository, ad es. Homebrew. Questo può essere fatto in pochi minuti e puoi accedere facilmente a molti altri strumenti da riga di comando che potresti desiderare.

# First install homebrew, than run this command 
brew install mercurial 
+0

Grazie per avermi indirizzato ai file hg incorporati, Jens. Non riuscivo a far funzionare la CLI con un link simbolico o un tweak di percorso, quindi ho seguito il tuo consiglio di installare una versione autonoma di Mercurial per la riga di comando. –

+0

Manca qualcosa o il tuo link simbolico non rinomina hg_local in hg? –

+0

Hai assolutamente ragione. Inoltre, c'è qualcosa di strano con il nome 'hg_local' e' mercurial_local'. Non sono su un Mac adesso. Hai impostato SourceTree e puoi verificare il nome effettivo di '..._ local'? Risolverò la risposta di conseguenza, per quanto riguarda entrambi i problemi. –