2013-04-22 14 views

risposta

6

Per questo è possibile utilizzare hg identify: può essere eseguito su un repository remoto e Mercurial interromperà con un codice di uscita di 255 se il percorso fornito non è un repository. Questo repository esiste:

$ hg identify https://bitbucket.org/mg/mercurial-talk; echo $? 
7788b512c5bd 
0 

Questo non lo fa:

$ hg identify https://bitbucket.org/mg/git-talk; echo $? 
abort: HTTP Error 404: Not Found 
255 

probabilmente si vorrà per reindirizzare sia stdout e stderr a /dev/null.

+0

Martin, posso chiederti di aggiungere almeno alcune delle tue risposte come argomento aggiuntivo in Mercurial Tips & Tricks (oppure - creare una propria lista di suggerimenti)? Vale a dire: questo, unendo .hgtags con il proprio mergetool, testando se l'unione fosse banale usando "internal: fail" –

+0

Eccellente. Questo risponde esattamente alla mia domanda. –

+0

@LazyBadger, stai parlando della [pagina wiki] (http://mercurial.selenic.com/wiki/TipsAndTricks)? Sarebbe bello collegare le risposte lì, ma mi dispiace dire che non passo molto tempo ad aggiornare il wiki in questi giorni. Per favore aggiungi i link come meglio credi, però! –

0

AFAIK, ls-remote (utilizzato all'interno del repository) con Git-URL mostra i riferimenti in questo URL da locale, sì?

Se vuoi sapere di Mercurial, che repository remoto, si sa (non utilizzato per spingere | tirare, solo conoscere), è possibile utilizzare hg paths

Se si vuole un po 'URL casuale a definire, è un repository Mercurial o no, puoi almeno provare clone da questo URL

+0

git ls-remote può essere utilizzato al di fuori di un repository git. 'git ls-remote $ url' restituisce true se' $ url' punta a un repository git valido. Sto cercando qualcosa di simile per mercurial, senza dover creare un clone. –

Problemi correlati