2012-06-11 17 views
9

Estoy estudiando la viabilidad de cambiar de svn a mercurial para mi organización, pero hay una interrupción en la que parece que no puedo encontrar una solución.¿Hay alguna forma de extraer/actualizar todos los subrepos?

¿Hay alguna manera de extraer y actualizar un repositorio y todos los subrepos sin tener que extraer y actualizar manualmente cada uno?

Me gustaría cambiar a mercurial, pero si eso no es posible, entonces es un no-go para nosotros.

Editar: Buen Dios que debe ser cansado hoy ... dos preguntas sobre SO para el que encontrar las respuestas minutos después de pedir ...

Respuesta

8

se perdió alguna manera esto, y lo encontraron justo después de hacer la pregunta: https://www.mercurial-scm.org/wiki/OnsubExtension

+1

Sí, eso es cómo lo hace :) Además, si se ha mezclado subrepos (algunos mercuriales, algunos de Git, algunos SVN), puede ejecutar cosas como: ' hg onsub -t hg "hg pull -u" ' ' hg onsub -t git "git pull" ' – Ludovic

0

como alterantive, un script por lotes pueden ayudar:

@echo off 
for /D %%d in (*) do (
    if exist %%d\.hg (
    echo Verzeichnis %%d 
    cd %%d 
    hg pull -u 
    echo ---------------------------------------------- 
    cd .. 
) 
) 
pause 
+0

Este script no es portátil, solo funciona para las ventanas y dos de Microsoft. –

1

puede definir un simple alias de cáscara como la siguiente

alias hgsub='find . -name ".hg" -type d | grep -v "\./\.hg" | \ 
xargs -n1 dirname | xargs -n1 -iREPO hg -R REPO ' 

y luego hacer

hgsub tip 
hgsub pull -u 
Cuestiones relacionadas