¿Una instancia de Gerrit que puede networkingimensionar proyectos a Google AOSP?

Lancé una instancia de Gerrit para mi organización, obtuve la authentication LDAP y he importado algunas copys de Android de manera manual. Guay.

Sin embargo, las copys de trabajo no incluyen references a las twigs ascendentes (remotas). Para un proyecto dado, digamos frameworks / base, lo que espero lograr es:

git branch -r # See Google branches git rebase # to a Google branch. git push # back to my Gerrit instance. 

¿Cómo me aseguro de que mis repositorys git locales estén al tanto de los proyectos iniciales, como se indicó anteriormente? ¿Necesito reflejar el contenido AOSP, localmente?

He intentado leer un poco de documentation, y también simplemente agregué una location remota para Google a mi manifiesto xml. La replicación de inserción se cubre ampliamente, pero este no es mi caso de uso, ya que quiero rastrear sucursales remotas, no hacer que mis cambios locales vuelvan a ellos.

¡Gracias!

Por lo que yo sé, la mayoría de los equipos usan un script que desplegará la versión de Android de Google y lo enviará directamente a sus serveres de Gerrit, omitiendo la revisión. No hay ninguna configuration en el file xml manifiesto que pueda ayudar con esto.

Algunas tiendas de Android quieren utilizar un espacio de nombres diferente para las twigs y tags de origen. Por ejemplo, en lugar de las twigs master y froyo y la label android-4.1.1_r6 , pueden prefijar todo con external external/froyo external/master , external/froyo y external/android-4.1.1_r6 .

Otras tiendas prefijan sus twigs internas y tags de una manera similar.

Su secuencia de commands para hacer este trabajo se verá similar a esto (no probado). Primero configura un clon repo local desde la parte superior utilizando la opción --mirror .

 # this only needs to be ran once, or for any new repositories added to repo: repo forall -c \ 'git remote add local_server ssh://path/to/local/gerrit:29418/$REPO_PROJECT' # fetch changes repo forall -c 'git fetch' # push to your local Gerrit server repo forall -c 'git push local_server refs/*:refs/external/*' 

Por supuesto, puede usar un trabajo cron para automatizar este script. Una vez que esto esté en su lugar, cuando los desarrolladores ejecuten git branch -r verán las twigs de origen / externas / blah desde el origen y podrán volver a establecer la base en esas twigs.