2010-01-19 12 views

Respuesta

13

Teniendo en cuenta la plantilla opción de git init:

--template=<template_directory> 

proporcionan el directorio desde el que se utilizarán plantillas. El directorio de plantillas predeterminado es /usr/share/git-core/templates.

Cuando se especifica, <template_directory> se utiliza como origen de los archivos de plantilla en lugar de los predeterminados.
Los archivos de plantilla incluyen cierta estructura de directorios, algunos sugieren "patrones de exclusión" y copias de archivos "gancho" no ejecutables. Los patrones sugeridos y los archivos de gancho son modificables y extensibles.

Si mira las fuentes de git para creating a new db, puede incluir allí un archivo de configuración con su valor predeterminado.

El function create_default_files() tiene:

/* First copy the templates -- we might have the default 
    * config file there, in which case we would want to read 
    * from it after installing. 
    */ 
copy_templates(template_path); 

El git/config.c tiene la función git_default_core_config() que establecen valores por defecto.

+1

@Jubobs He restaurado el enlace. – VonC

+0

Al mirar el código, parece que la configuración se determina automáticamente y no se puede cambiar. P.ej. Quiero cambiar la configuración predeterminada para core.filemode, pero esto está codificado en base a una comprobación ("'/* Check filemode trustabililty */'"). – donquixote

+0

Agregué un archivo '/ usr/share/git-core/templates/config', con' filemode = false' y un 'xyz = foo' al azar en la sección' [core] '. El 'xyz = foo' funciona, pero el' filemode = false' se sobrescribe gracias a la lógica de hardcoded mencionada anteriormente. – donquixote

2

Todas las configuraciones globales de git pueden ser alteradas por el --global suministrado en la línea de comando.

Por ejemplo:

git config --global user.name "First Last" 
git config --global user.email "[email protected]" 

Actualización:

Todas las configuraciones existentes git se pueden encontrar por

git config -l 

Además, git config -e abre un editor para su edición.

+3

La pregunta era acerca de los valores predeterminados que se escriben en _local_ config en cada repositorio recién creado. Esto no tiene nada que ver con la configuración global, porque la configuración local anula la global. – Rast

Cuestiones relacionadas