2011-07-07 13 views
5

Quiero crear un paquete de git que contenga solo los commits en mi escondite que no están en el punto en que se basa el alijo. Quiero hacer esto en lugar de enviar todos y cada uno de los commit realizados, ya que sé que el destinatario ya se ha comprometido hasta e incluyendo el punto de divergencia.git bundle desde stash divergence punto hasta stash

Me estoy haciendo esto:

$ git bundle create ehhh stash...master^1 
fatal: Refusing to create empty bundle. 

... que no tiene sentido, ya que los rendimientos git rev-list stash...master^1 dos confirmaciones.

¿No entiendo la herramienta o es una limitación?

Respuesta

1

El problema es que el paquete treeish ... master^1 no se interpreta correctamente por bundle. Una solución es crear una etiqueta:

git tag bundle_end master^1 
git bundle create ehhh stash...bundle_end 

Tenga en cuenta que treeish especificadores rango recuperar todas las confirmaciones desde el principio, sin incluir el principio comprometa.

+0

Eso tampoco funcionó, el mismo problema. Creo que ya lo sabes, pero solo asegúrate de que: el padre de stash es maestro ^. git rev-list stash ... bundle_end enumera el alijo y su índice como se esperaba. Terminé aplicando mi escondite a una sucursal pública del repositorio (el camino inseguro de menor resistencia), aunque mis planes para tomar el control del mundo estaban ahí (es por eso que quería agruparlos, para que la información fuera privada para el destinatario).) Lo siento si el mundo se destruye porque alguien más obtiene mis planes ahora. – GNUnit

Cuestiones relacionadas