2012-05-09 22 views
14

Mi empresa está incorporando iRise para prototipos y carece de cualquier tipo de control de versiones (a menos que haga copias de sus archivos con diferentes nombres de archivo = versiones). De todos modos, estamos usando Git para nuestro control de versiones y dado que el usuario típico de iRise aquí será un diseñador gráfico/web, quiero automatizar el proceso tanto como sea posible. Tengo una carpeta caliente corriendo un AppleScript que empujará a un repositorio remoto, pero no estoy seguro de cómo agregar un mensaje ...Git: Enviar a un repositorio remoto con un mensaje

git push TestProject master 

intentado

git push TestProject master -m 'message' 

pero tiró un error de interruptor y mostró una lista de opciones, -m no es una de ellas ...

¿esto es posible o tienes que confirmar localmente primero y luego empujar eso al control remoto y el mensaje se adjuntará con él?

Respuesta

25

Usted tendrá que hacer un commit (después de añadir archivos)

git commit -m 'message' 

y empuje:

git push TestProject master 

No se puede asociar un mensaje al empuje.

+1

Gracias, ¿alguna idea de cuál es el razonamiento para eso? – PruitIgoe

+0

Dang, tienes que esperar 12 minutos para darte los puntales ... – PruitIgoe

+4

"El razonamiento" para eso es que "pulsar" es copiar confirmaciones de un repositorio a otro. Entonces debes tener un compromiso para que se copie. – ebneter

6

Creo que la pregunta es legítima, y ​​no está completamente respondida por la respuesta anterior. Aquí es un flujo de trabajo que utilizamos en nuestra empresa (usamos flujo GIT):

  1. característica de flujo git empezar myFeature
  2. git commit -m 'para la función de cometer myFeature antes de la revisión de código'
  3. iniciado código colaborador revise con la confirmación anterior.
  4. git commit -m 'cometen por los comentarios de revisión de código/cambios para myFeature RONDA1'
  5. < mismo que el anterior, tal vez round2 >
  6. flujo git acabado en función myFeature
    • este se fusiona a locales a desarrollar rama, y elimina la rama myFeature
  7. git push origin desarrollar

Ahora bien, sería muy bonito si pudiéramos añadir un mensaje de este tipo durante el empuje Paso 7. así:

git push -m 'Feature is code complete, code collaborator review ids 1234, 1235.' origin develop 

Definitivamente, no es un caso trivial en la que alguien está tratando de impulsar sin comete, sino una un paso muy útil en el que anota un impulso específico con metadatos que proporciona cierta pista de auditoría.

+0

Sí, estoy de acuerdo. En mi caso, estoy presionando un nuevo clon. Me gustaría un mensaje para decir de dónde he clonado. Como novato, no veo esa información disponible. Ser capaz de rastrear fácilmente el origen de una rama es algo que SVN hace realmente bien. Quiero imitar eso. – AnneTheAgile

+0

¿Cómo puede alguien revisar el código sin que se lo envíe al repositorio remoto? ¿Están revisando por después de venir a la máquina de desarrolladores? AFAIK commit es un proceso local :) – nanosoft

Cuestiones relacionadas