¿Cómo configurar un repositorio de fuente de Android mientras hospeda los árboles git como repositorios privados en github?
Estoy tratando de configurar un repositorio privado de código fuente de Android, mientras que el alojamiento de los árboles git en github como repos privado.
No tengo ningún problema al cambiar el archivo manifest.xml para apuntar a los árboles git públicos alojados en github de la misma manera que CynagonMod, pero al intentar apuntar a repos privado obtengo el siguiente error al intentar "repo sync":
- Android - ¿Añadir una nueva biblioteca al repo?
- ¿Cómo funciona el repositorio de manifiesto de repo de Android?
- Repo con manifiesto local no funciona
- Clonación de fuentes de Android a un servidor de repositorio local
- Rollback usando el comando repo?
Inicializando el nombre de usuario del proyecto / android_external_webkit …
fatal: El extremo remoto colgó inesperadamente
error: No se puede recuperar el nombre de usuario / android_external_webkit
Donde username / android_external_webkit es, por supuesto, un repo de github privado del mismo nombre.
Entiendo que el error se produce porque no he especificado mi nombre de usuario y credenciales a github, pero no puedo ver cómo hacerlo en el manifest.xml con repo.
¿Algunas ideas?
¡Gracias! Gilad
- Cómo comprobar la fuente de Android de github
- ¿Está disponible la documentación de 'repo' de Android?
- Android Repo init fallido
- Uso de Repo con Msysgit
- Comando de repo de Android y ramas de conmutación
- Android Source Repo GPG clave pública no encontrada
- Cómo reanudar la sincronización de repo
- Después de la sincronización Repo, no hay archivos en el directorio
Bueno, sentirme tonto para responder a mi propia pregunta, pero me enteré de la respuesta, así que tal vez voy a ahorrar unos minutos a la siguiente persona que se ejecuta en ella.
La respuesta es muy sencilla: en el archivo manifest.xml, cree una etiqueta remota con el fetch especificando ssh como el transporte y "git" como nombre de usuario. Aquí hay un ejemplo:
<remote name="private_stuff" fetch="ssh://[email protected]/" />
Ahora utilice "private_stuff" como el campo remoto de los árboles git que desea extraer. Por ejemplo:
<project path="xyz" name="username/xyz" remote="private_tuff" />
Y init y sincronizar el repo como de costumbre.
Parece que el método adecuado es usar un local_manifest.xml
en el directorio ./repo
según este enlace
véase también la documentación oficial de la reserva https://gerrit.googlesource.com/git-repo/+/master/docs/manifest-format.txt
sólo tienes que añadir esto a tu manifiesto
<remote name="github" fetch="https://github.com/" />
- El retorno de carro de TextView no funciona
- ¿Cómo hacer un intervalo de sombra de cadena en Android?