¿Deberíamos agregar Podfile.lock a .gitignore en proyectos de Flutter?

2 minutos de lectura

Avatar de usuario de Mark
Marca

Por supuesto, en proyectos normales de Xcode, Podfile.lock debería siempre ser registrado en el control de versiones. Sin embargo, la aplicación de ejecución iOS de Flutter no es un proyecto Xcode “normal” (en el sentido de que Flutter lo administra y los desarrolladores rara vez lo tocan).

Flutter usa Cocoapods y nuestro equipo notó que Podfile.lock contiene referencias a rutas completas en la máquina del desarrollador. Sin embargo, esto no causa ningún problema directo ya que, aparentemente, el Podfile.lock se regenera cada vez que compila/ejecuta la aplicación Flutter y las rutas completas se cambian a cualquiera que sea la ruta en su máquina. Además, eliminar Podfile.lock no causa ningún daño porque se genera automáticamente de todos modos.

La cuestión es que causa molestos conflictos de fusión en git que deben resolverse cada vez. Dado que se genera automáticamente, me pregunto si en este caso es realmente necesario verificarlo en el control de versiones o si es seguro simplemente ignorar el archivo en .gitignore.

Hay más debate sobre esto en Githubsin embargo, parece que no puedo encontrar una respuesta definitiva allí.

—editar— Para aclarar: sé para qué sirve Podfile.lock, pero no estoy seguro de si mi suposición de que Flutter lo anula es correcta.

El motivo de la comprobación de la Podfile.lock es para que el desarrollador de la aplicación pueda recrear y compartir exactamente una configuración de Pod en un equipo. Sin comprobar en el Podfile.locklos desarrolladores del mismo equipo obtendrán diferentes versiones de pods dependiendo de cuándo lo hagan pod install.

Si flutter está anulando el Podfile.lock funcionalidad, no habría ninguna razón para comprobarlo.

  • Tal vez debería haber formulado mi pregunta más claramente, así que agregué una aclaración. ¡Gracias por tu respuesta!

    – Marca

    15 oct 2019 a las 23:29


¿Ha sido útil esta solución?