¿Debería agregarse la carpeta .gradle al control de versiones?

104

Gradle crea una carpeta llamada .gradle. ¿Debo rastrearlo con mi control de versiones (es decir, git)?

Más importante aún, ¿por qué / por qué no?

cientifico de cohetes
fuente

Respuestas:

114

¿Debo rastrear el directorio .gradle?

No. Se puede ignorar con seguridad.


¿Por qué debería ignorarlo?

Es puramente para almacenar información en caché, no la quiere en su repositorio porque:

  • puede crecer y estar lleno de archivos binarios
  • puede haber datos específicos de la máquina allí
  • hay mucha rotación allí (estaría constantemente realizando cambios en los archivos allí)
  • todo lo que hay allí se puede volver a generar por completo siempre que sea necesario de todos modos

Es básicamente un directorio temporal que Gradle está colocando en medio de su código fuente (por qué Gradle piensa que es una cosa apropiada es una pregunta diferente).

Puede saber la naturaleza del "directorio de caché" del directorio por el nombre del conmutador que le permite cambiar a dónde va: " --project-cache-dir ".

Aunque odio tener archivos binarios en mi árbol de fuentes, por lo general termino agregando el directorio a mi archivo de ignorar porque en algún lugar de la línea me olvido de usar el interruptor desde alguna línea de comando o desde mi IDE o algo y luego termino tener que lidiar con el directorio de todos modos.


¿Cómo lo ignoro?

Los usuarios de Git pueden agregar una línea con solo .gradleal archivo .gitgnore y Git ignorará todos los archivos en cualquier directorio con ese nombre.

Los usuarios de Mercurial quieren buscar el archivo .hgignore .

Para otros sistemas de control de versiones, consulte la documentación; todos tienen una función para admitir esto.

Esquilado
fuente
Todas las debs de iOS del mundo se están convirtiendo a Android, ¡gracias! :)
Fattie
13

La carpeta .gradle contiene información calculada diferente sobre su compilación de Gradle (por ejemplo, salidas / información de entrada en caché). Definitivamente no debería registrar esa carpeta en su sistema de control de versiones.

Rene Groeschke
fuente
3

No es necesario que conserve la carpeta .gradle.

Porque una vez que vuelva a ejecutar el comando de compilación de gradle, puede volver a crear casi la misma carpeta .gradle.

Pero cuando usa el archivo gradle.setting en .gradle, es posible que deba moverlo a la carpeta raíz del proyecto.

Naggi
fuente
0

cuando iniciamos el gradle, crea la carpeta .gradle dentro de su directorio de inicio. Consiste en nativos (información sobre su sistema) y cachés. Los cachés consisten además en complementos y todas las demás dependencias de jar.

Cuando construimos el proyecto por primera vez en ese momento, descarga las dependencias y los complementos y los revisa aquí. la próxima vez que lo necesitemos, se obtendrá de aquí. incluso cuando los necesitamos en eclipse para compilar el código (=> gradle eclipse), sus dependencias se agregan desde el caché

Como seguirá actualizándose y agregando cuando ejecute gradle. así que supongo que no lo agregamos al control de versiones.

AKT
fuente
0

Era nuevo en Gradle y pensé que la carpeta .gradle contendrá información genérica, como asignaciones de dependencias, etc., y la cargué en el control de versiones. Luego intenté configurar una nueva máquina con un tipo de sistema operativo diferente y una versión de Java usando el código del control de versiones, incluida la carpeta .gradle, y encontré errores. Resultó que la carpeta .gradle contiene información específica de la máquina y se usa para almacenar en caché en local. No incluya la carpeta .gradle en el control de versiones e intente configurar una nueva máquina con el código, el demonio gradle hará el resto.

Varun
fuente