Pregunta

Estoy clonando un repositorio que fue generado por primera vez por git-p4. git-p4 usa una rama 'remotes / p4 / master' que me gustaría rastrear. ¿Cómo le digo a git, que es la clonación de ese repositorio, que también realice un seguimiento de los controles remotos / p4 / master? De esa manera podría revisar " origin / remotes / p4 / master " o algo así.

¿Fue útil?

Solución

También puede ajustar las propiedades de recuperación para reflejar esas referencias, aunque no como parte de un clon estándar.

Entonces una secuencia como:

git clone ~/p4/git/services/info-service.git
cd info-service
git config --add remote.origin.fetch +refs/remotes/p4/*:refs/remotes/origin/p4/*
git fetch origin

Esto buscará refs / remotes / p4 / release / 1.1 por ejemplo en info-service.git para que sea refs / remotes / origin / p4 / release / 1.1 en su clon, y puede crear una rama basada en ella con git checkout -b r1.1-fixes origin / p4 / release / 1.1

Habiendo dicho todo eso, en mis repositorios de réplica de Perforce, creo ramas reales para reflejar todas las ramas remotas p4, en gran parte para evitar tener que pasar por todo lo anterior. También me da la oportunidad de arreglar los nombres de los prefijos de ruta de p4 a los nombres de rama de git (por lo que p4 / main se convierte en master , p4 / release / 1.1 se convierte en r1.1 etc). Utilizo mi propia replicación p4-to-git, pero podría hacer lo mismo haciendo un bucle en los refs remotos p4 con git for-each-ref y configurando las sucursales locales utilizando git update- ref .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top