¿Qué significa el Refspec HEAD: refs / for / refs / heads / master generado por eGit / ZendStudio 9?

Se configura un proyecto de Git en ZendStudio 9. (basándose en eclipse con eGit)

Genera un refspec de búsqueda normal silencioso:

Remote Fetch Specification +refs/heads/*:refs/remotes/original/* 

Pero un muy misterioso push refspec:

 Remote Push Specification HEAD:refs/for/refs/heads/master 

En el control remoto puedo ver por "git ls-remote" lo siguiente:

 8db575549dea67a45cea04358f902993c940c4d8 HEAD 16f0939153e6ef12b4596f0d4fb43fa5b8b0246b refs/for/refs/heads/master 8db575549dea67a45cea04358f902993c940c4d8 refs/heads/master 

Y tengo en la máquina local el post por "estado de git":

 On branch master Your branch is ahead of 'original/master' by 5 commits. 

Por lo tanto, preste atención, porque mi pregunta no es "¿Qué significa? …

Mi pregunta es:

  • ¿Qué significa este flujo de trabajo? ¿Cuál es el sentido?
  • ¿Para qué se genera este ref en el server "refs / for …"?
  • ¿No es mejor trabajar en una sucursal local en lugar de tener una reference en el server para enviar?

Gracias por adelantado.

Uno, un refspec habitual relacionado con Gerrit debería ser (como lo comentó jszakmeister en " Revisión del código de Gerrit – Cargar cambios ")

 HEAD:refs/for/branchname 

Entonces, en todo caso, debería haber sido

 HEAD:refs/for/master 

Pero en tu caso, no necesitas ese tipo de refspec (ya que no tienes Gerrit)

¿Es esta una manera habitual de comprometerse,

No, no es.

¿Es un mal incumplimiento, no vale nada?

En tu caso, sí, no es útil.

Esto podría ser un efecto secundario de lo que este hilo menciona:

De hecho, Gerrit está integrado y se envía junto con la function EGit. Actualmente no hay forma de desactivar Gerrit desde dentro de Zend Studio.

El error 347077 "Hacer funciones de Gerrit Opcional" sigue abierto.


los comentarios OP tweini :

Para salir de esta trampa, tenía que darme count de que esta reference está creando una twig en el control remoto sin una twig de seguimiento remota asociada a ella.

Pero deshacerse de él es bastante fácil:

  • Cambiar push refspec en .git/config para push = refs/heads/master:refs/heads/master ,
  • Empuje su repository local para git push remoto
  • Eliminar la twig en la git push --delete origin refs/for/refs/heads/master remota de git push --delete origin refs/for/refs/heads/master