gmbh - travis git
Intentar comprender qué hace Travis CI y cuándo debe utilizarse. (2)
Soy muy nuevo en Git y estoy planeando contribuir a algún proyecto de código abierto en GitHub después de descubrir un pequeño error en él. Al bifurcarlo y corregir el error, propuse una solicitud de extracción y noté que aparecía:
Fallido: la compilación de Travis CI ha fallado
Al Could not find .travis.yml
los detalles, descubrí que fue causado por Could not find .travis.yml
, lo cual tenía mucho sentido ya que no había iniciado sesión en Travis Cl con y agregar .travis.yml al repositorio.
Esta es la primera vez que escucho sobre Travis y lo que se conoce como integración continua. Y suena bastante bien, así que para aprender más sobre eso, lo busqué en Wikipedia.
Travis CI es un servicio de integración continua distribuido y alojado que se utiliza para crear y probar proyectos alojados en GitHub. Travis CI detecta automáticamente cuándo se ha realizado una confirmación y se envía a un repositorio de GitHub que utiliza Travis CI, y cada vez que esto sucede, intentará crear el proyecto y ejecutar las pruebas . Esto incluye compromisos para todas las ramas, no solo para la rama maestra.
Mi comprensión actual de Travis CI es que lo que hace es impulsar automáticamente el proyecto sobre git commit -am ".."
y no entiendo muy bien una parte de él.
Al construir el proyecto y ejecutar las pruebas , ¿qué pruebas se ejecutarán? ¿Y cómo va a "construir" el proyecto? (como compilarlo a binario?)
Dice que "Esto incluye compromisos para todas las sucursales", pero ¿qué sucede si no quiero comprometerme con todas las sucursales?
¿Está bien si no uso Travis Cl en absoluto? ¿Bajo qué circunstancias es mejor usarlo (o debe usarse)?
Como ya ha descubierto qué es Travis-CI, quisiera señalar directamente las preguntas que tiene.
Al construir el proyecto y ejecutar las pruebas, ¿qué pruebas se ejecutarán? ¿Y cómo va a "construir" el proyecto? (como compilarlo a binario?)
En el archivo .travis.yml
está especificando su sistema operativo, el lenguaje de programación, su rama de repositorio, el nombre del archivo del proyecto y otros detalles. Al leer este archivo, Travis-CI utilizará los compiladores específicos que se instalaron en su servidor para compilar nuestro código. Probablemente tendrán el mismo mecanismo que tenemos para Github. Por primera vez, podrían extraer el código [si hemos especificado sucursales específicas, podrían extraer el código solo de esas sucursales]. Además, nos hemos autenticado para usar nuestra cuenta con Travis-CI, siempre que realicemos un compromiso, debería haber alguna notificación al servidor de Travis-CI, por lo que se reconocerá como un compromiso y comenzará a compilar.
Dice que "Esto incluye compromisos para todas las sucursales", pero ¿qué sucede si no quiero comprometerme con todas las sucursales?
Puede especificar diferentes ramas o la rama master
. Y solo debe compilar las ramas específicas especificadas en el archivo .travis.yml
.
¿Está bien si no uso Travis Cl en absoluto? ¿Bajo qué circunstancias es mejor usarlo (o debe usarse)?
Si esta bien No es un gran trato. Pero, ¿qué beneficios le faltará al no utilizar este motor fácil de integrar con su repositorio? Cada vez que se comprometa, es posible que se pierda algo y no se compile debido a un código. ¿Cómo lo sabrás? Por lo tanto, debe utilizar Travis-CI.
He escrito una publicación de blog que puedes leer para saber qué es Travis-CI, Integraciones continuas y cómo vincular Travis-CI con tu Github Repo. Lo he escrito para un repositorio Swift.
La forma más sencilla de explicar Travis CI es que ejecuta las pruebas de su programa cada vez que se compromete con GitHub (esto puede configurarse de muchas maneras y siempre puede desactivar las compilaciones en algunas sucursales). El punto de esto es que a menudo puede descubrir muy rápidamente si su compromiso rompió algo, y solucionarlo antes de que se convierta en un problema. Recomendaría ejecutar Travis CI en cada repositorio de GitHub en el que tenga pruebas de unidad y esté usando un lenguaje de programación compatible con Travis CI. Dado que configurar Travis CI es muy fácil, normalmente no veo una buena razón para no usarlo, a menos que no le importe si tiene exámenes de aprobación en su programa o no. Siéntase libre de dejar un comentario si tiene más preguntas. Puedes leer más sobre Travis CI aquí .