Auto: Git falla al lanzar (pero no estoy seguro de en qué falló)

Creado en 21 oct. 2019  ·  12Comentarios  ·  Fuente: intuit/auto

Describe el error

Después de varios inicios en falso, finalmente logré la liberación de relevo-compilador-lenguaje-mecanografiado nuevamente. Empujar de Travis fue un desafío de resolver.

Aquí está la compilación exitosa: https://travis-ci.org/relay-tools/relay-compiler-language-typescript/builds/600830491

Mi compañero de trabajo fusionó un PR después de eso y resultó en una nueva falla

ℹ  info      Getting commits from v9.0.0 to HEAD

fatal: ambiguous argument 'v9.0.0..HEAD': unknown revision or path not in the working tree.

Use '--' to separate paths from revisions, like this:

'git <command> [<revision>...] -- [<file>...]'

Al examinar los resultados de la compilación, no está claro de inmediato qué fue lo que falló.

Lo único que no hizo fue console.log la versión al final (porque falló) ... pero los registros me llevan a creer que debería haber fallado mucho antes de hacer todas las demás cosas.

Estoy un poco perplejo, ja. ¿Alguna idea?

documentation question

Todos 12 comentarios

Acabo de pasar por esto hoy. ambiguous argument 'v9.0.0..HEAD' debe fijarse con git fetch --tags para que env tenga todas las etiquetas que necesita para encontrar diferencias

Gracias por el aviso @strass. Siento que tenemos una oportunidad aquí para verificar las cosas que esperamos y tratar de aprovecharlas si no existen.

pero los registros me llevan a creer que debería haber fallado mucho antes de hacer todas las demás cosas.

No estoy seguro de que estemos viendo los registros correctos. Terminan mucho antes de que pase algo

Descubrí lo que pasó:

  1. https://github.com/relay-tools/relay-compiler-language-typescript/pull/147 combinado 9:32 am (compilación 1)
  2. https://github.com/relay-tools/relay-compiler-language-typescript/pull/139 combinado 9:33 am (compilación 2)
  3. La compilación 1 ejecuta git checkout master && git pull origin && git branch --set-upstream-to origin/master master que incluye la confirmación en la compilación 2
  4. Build 1 hace un lanzamiento importante para los cambios de build 2 a pesar de que Build 1 fue un "lanzamiento por omisión"
  5. Build 2 intenta lanzar sus cambios, pero Build 1 ya lo hizo. Entonces el CI falla

Parece que el problema es que travis no está en master cuando se ejecuta la compilación para el compromiso de fusión, por lo que debe hacer algo de git fu. Así es como manejo esto para las acciones (tenga en cuenta la falta de git checkout master && git pull origin )

https://github.com/hipstersmoothie/create-check/blob/master/.github/workflows/push.yml#L41

@zephraph ¿Podrías agregar una página a los documentos que explique una buena configuración de travis?

Acabo de pasar por esto hoy. ambiguous argument 'v9.0.0..HEAD' debe fijarse con git fetch --tags para que env tenga todas las etiquetas que necesita para encontrar diferencias

He abordado esto en https://github.com/intuit/auto/pull/626. No dude en revisar y mejorar la mensajería @strass

@hipstersmoothie También me pregunto cuánto de este auto debería intentar hacer por el usuario. Como, en ese caso, solo intentar recuperar las etiquetas automáticamente.

Enviado con GitHawk

Abro para ganar auto para hacer un poco más de este trabajo, simplemente no sé cómo se desarrollaría en la práctica. Al igual que usted, su caso al agregar esta función crearía una versión "vacía", ya que todo ya se publicó. En mi opinión, la mejor experiencia es cometer un error (tal vez con un mejor mensaje) cuando el código se ha liberado desde otra rama.

Tampoco sé cómo se comportaría todo si está ejecutando shipit en una rama que está detrás de la última etiqueta

Voy a cerrar esto ahora que se ha enviado el # 626.

Agregará algunos documentos en la configuración de travis.

¿Fue útil esta página
0 / 5 - 0 calificaciones