Tengo un repositorio de Git. Este repositorio tiene múltiples repositorios remotos (creo). ¿Cómo puedo obtener una lista de los repositorios remotos que pertenecen a dicho repositorio?
¿Me gusta git list --remotes
o algo así?
Puede obtener una lista de las URL remotas configuradas con el comando git remote -v
.
Esto te dará algo como lo siguiente:
base /home/***/htdocs/base (fetch)
base /home/***/htdocs/base (push)
origin [email protected]:*** (fetch)
origin [email protected]:*** (push)
git remote -v
porque -v es para verbose.git remote
da una lista simple de controles remotos (base, origen en este caso). La opción -v incluye la url para las operaciones de recuperación y envío de cada control remoto.-v
para "detallado" es en realidad la opción más común. También es compatible congit branch
. La diferencia básica es las opciones cortas frente a las largas (esencialmente un solo guión doble). Dicho esto, apoyar --list con elremote
subcomando tendría sentido. Si realmente lo desea, diría que envíe una solicitud de función.Si solo necesita los nombres de los repositorios remotos (y no ninguno de los otros datos), un simple
git remote
es suficiente.fuente
FWIW, tenía exactamente la misma pregunta, pero no pude encontrar la respuesta aquí. Probablemente no sea portátil, pero al menos para gitolite, puedo ejecutar lo siguiente para obtener lo que quiero:
fuente
Las respuestas hasta ahora le dicen cómo encontrar sucursales existentes:
O repositorios para el mismo proyecto [ver nota a continuación] :
Hay otro caso. Es posible que desee saber sobre otros repositorios de proyectos alojados en el mismo servidor.
Para descubrir esa información, uso SSH o PuTTY para iniciar sesión en el host y
ls
encontrar los directorios que contienen los otros repositorios. Por ejemplo, si cloné un repositorio escribiendo:y quiero saber qué más hay disponible, inicio sesión en git.mycompany.com a través de SSH o PuTTY y escribo:
asumiendo
ls
dice:Puedo usar el comando
para acceder al otro proyecto.
fuente
Una forma simple de ver ramas remotas es:
Para ver sucursales locales:
fuente
git ls-remote
debería mostrarle todos los controles remotos disponibles para buscar desde el servidor ascendente ( git-scm.com/docs/git-ls-remote ). Creo que todas las respuestas en esta página solo le dicen cómo enumerar los controles remotos y las ramas de seguimiento que ya ha obtenido, que es un Catch-22. No puede recuperar un control remoto hasta que sepa cómo referirse a él en el servidor ascendente.Ninguno de esos métodos funciona de la manera que el interlocutor está pidiendo y que a menudo también he necesitado. p.ej:
El objetivo de hacer esto es que no tiene ninguna información, excepto el usuario remoto y el servidor, y desea saber a qué tiene acceso.
La mayoría de las respuestas asumen que está realizando consultas desde un conjunto de trabajo de git. El interlocutor asume que no lo eres.
Como ejemplo práctico, suponga que hay un repositorio foo.git en el servidor. Alguien en su sabiduría decide que necesita cambiarlo a foo2.git. Sería realmente bueno hacer una lista de un directorio git en el servidor. Y sí, veo los problemas para git. Sin embargo, aún sería bueno tenerlo.
fuente