Me gustaría mostrar todas las secciones configuradas de Git.
Solo encontré git config --get core.editor, y me gustaría mostrar todo lo que está configurado globalmente, no solo el editor predeterminado configurado.
Tenga en cuenta que pronto (Q3 / Q4 2015) tendrá con git 2.6 la opción --name-only, para enumerar solo las claves de configuración, sin sus valores. Vea mi respuesta a continuación
Gracias, los he votado a los dos. Yo quería saber el git config --listcomando porque puedo mirar la configuración efectiva en un repositorio y puedo ser diferentes locales de configuración, global y el sistema con el parámetro apropiado ( --global, --local, --system). Aceptaré tu respuesta lo antes posible porque fuiste unos segundos más rápido :)
wullxz
2
Tenga cuidado, hay muchas fuentes potenciales para la configuración de git. Mirar el archivo solo da una parte. La respuesta de @ linquize es correcta.
vonbrand
2
@vonbrand: --list es equivalente a -l.
Cameron Skinner
99
Las manos cortas (como -l) son útiles cuando te conviertes en un usuario avanzado y usas la función con la frecuencia suficiente, para realmente beneficiarte de escribir menos caracteres. Me resulta más fácil encontrar y recordar la --listopción larga . Para las manos cortas menos obvias, a menudo tengo que verificar qué representan, por lo que prefiero los nombres largos. Son aún más fáciles, con la finalización de comandos, cuando realmente no tiene que escribir todos los caracteres, pero aún así ve el nombre completo de la opción.
Krzysztof Jabłoński
1
¿Qué pasa si git config --listno imprime nada?
Matej J
247
El más corto,
git config -l
muestra todos los valores heredados de: sistema, global y local
¿Esto difiere de git config --list , o es solo una forma más corta de escribirlo?
Magnilex
8
@Magnilex es solo una forma más corta de escribirlo
LemenDrop
3
Es posible que los archivos de configuración no siempre muestren todas las configuraciones heredadas, pero git config -llo mostrarán todo. Me salvó porque git para Windows establece autocrlfen la instalación, y no está en ningún archivo de configuración que pueda encontrar.
geneorama
sí, también hay un archivo C: \ ProgramData \ Git \ config - Creo que este es un archivo de configuración global o del sistema git
Alex
129
¿Cómo edito mi global configuración Git?
Respuesta corta: git config --edit --global
Para comprender la configuración de Git, debe saber que:
Las variables de configuración de Git se pueden almacenar en tres niveles diferentes. Cada nivel anula los valores en el nivel anterior.
1. Nivel del sistema (aplicado a cada usuario en el sistema y todos sus repositorios)
para ver, git config --list --system(puede necesitarsudo )
establecer git config --system color.ui true
para editar el archivo de configuración del sistema, git config --edit --system
2. Nivel global (valores específicos personalmente para usted, el usuario).
para ver, git config --list --global
establecer git config --global user.name xyz
para editar el archivo de configuración global, git config --edit --global
3. Nivel de repositorio (específico para ese repositorio único)
¿Tenía la intención ~/.gitconfigo uno de los otros archivos mencionados en la sección ARCHIVOS de git help config?
chwarr
1
@chwarr - Lo siento, no entiendo. ¿"Intenté"?
Rook
1
Creo que querías decir "Normalmente solo abro ~/.gitconfig", ya que git no busca .gitconfigen el directorio actual, independientemente de dónde se encuentre. ( .gitconfigy ~/.gitconfignombre diferentes archivos [ generalmente ].) Los otros archivos mencionados en git help configtienen nombres de archivo diferentes, de ahí la suposición.
chwarr
32
También puede llamar git config -epara abrir el archivo de configuración en su editor directamente. El archivo de configuración de Git es mucho más legible que la -lsalida, por lo que siempre tiendo a usar la -ebandera.
Entonces para resumir:
git config -l # List Git configuration settings (same as --list)
git config -e # Opens Git configuration in the default editor (same as --edit)
Sin parámetros, interactúa con lo local .git/config.
Con --globalél interactúa con ~/.gitconfig.
Y con --systemél interactúa con $(prefix)/etc/gitconfig.
(Realmente no pude encontrar lo que $(prefix)significa, pero parece estar predeterminado $HOME).
config: agregar '--name-only ' opción para listar solo nombres de variables
' git config' solo puede mostrar valores o pares de nombre-valor, por lo que si un script de shell necesita los nombres de las variables de configuración establecidas, debe ejecutar ' git config --list' o ' --get-regexp' y analizar la salida para separar los nombres de las variables de configuración de sus valores.
Sin embargo, este análisis no puede hacer frente a valores de varias líneas.
Aunque ' git config' puede producir una salida terminada en nulo para el análisis seguro de nueva línea, no es útil en este caso, porque los shells no pueden hacer frente a caracteres nulos.
Incluso nuestro propio script de finalización de bash sufre de estos problemas.
Ayude al script de finalización, y a los scripts de shell en general, introduciendo la --name-onlyopción ' ' para modificar la salida de ' --list' y ' --get-regexp' para enumerar solo los nombres de las variables de configuración, para que no tengan que realizar un procesamiento posterior propenso a errores para separe los nombres de las variables de sus valores.
Por defecto, git configescribirá a un local nivel si no se pasa ninguna opción de configuración. Los valores de configuración local se almacenan en un archivo que se puede encontrar en el directorio .git del repositorio:.git/config
La configuración de nivel global es específica del usuario, lo que significa que se aplica a un usuario del sistema operativo. Los valores de configuración global se almacenan en un archivo que se encuentra en el directorio de inicio de un usuario. ~/.gitconfigen sistemas Unix y C:\Users\<username>\.gitconfigen Windows.
La configuración a nivel del sistema se aplica en toda una máquina. Esto cubre a todos los usuarios en un sistema operativo y todos los repositorios. El archivo de configuración a nivel del sistema vive en un gitconfigarchivo fuera de la ruta raíz del sistema. $ (prefijo) / etc / gitconfig en sistemas Linux. En Windows, este archivo se puede encontrar en C:\ProgramData\Git\config.
Entonces su opción es encontrar ese .gitconfigarchivo global y editarlo.
Si solo desea enumerar una parte de la configuración de Git, como alias , núcleo , remoto , etc., puede canalizar el resultado a través de grep. Algo como:
El comando git config es una función conveniente que se utiliza para establecer los valores de configuración de Git a nivel de proyecto global o local. Estos niveles de configuración corresponden a archivos de texto .gitconfig. Lea más aquí: atlassian.com/git/tutorials/setting-up-a-repository/git-config
system rebase.autosquash=true
system credential.helper=helper-selector
global core.editor='code.cmd' --wait -n
global merge.tool=kdiff3
local core.symlinks=false
local core.ignorecase=true
Se puede combinar con
--localpara la configuración del proyecto, --globalpara la configuración del usuario , para la configuración --systemde todos los usuarios
--show-origin para mostrar la ubicación exacta del archivo de configuración
--name-only
, para enumerar solo las claves de configuración, sin sus valores. Vea mi respuesta a continuación$ git config --list
Comprobando su configuracióngit config --global --list
como se explica más profundo en aquíRespuestas:
Puedes usar:
o mira tu
~/.gitconfig
archivo. La configuración local estará en el.git/config
archivo de su repositorio .Utilizar:
para ver dónde se define esa configuración (global, usuario, repositorio, etc.)
fuente
git config --list
comando porque puedo mirar la configuración efectiva en un repositorio y puedo ser diferentes locales de configuración, global y el sistema con el parámetro apropiado (--global
,--local
,--system
). Aceptaré tu respuesta lo antes posible porque fuiste unos segundos más rápido :)-l
) son útiles cuando te conviertes en un usuario avanzado y usas la función con la frecuencia suficiente, para realmente beneficiarte de escribir menos caracteres. Me resulta más fácil encontrar y recordar la--list
opción larga . Para las manos cortas menos obvias, a menudo tengo que verificar qué representan, por lo que prefiero los nombres largos. Son aún más fáciles, con la finalización de comandos, cuando realmente no tiene que escribir todos los caracteres, pero aún así ve el nombre completo de la opción.git config --list
no imprime nada?El más corto,
muestra todos los valores heredados de: sistema, global y local
fuente
git config -l
lo mostrarán todo. Me salvó porque git para Windows estableceautocrlf
en la instalación, y no está en ningún archivo de configuración que pueda encontrar.Respuesta corta:
git config --edit --global
Para comprender la configuración de Git, debe saber que:
1. Nivel del sistema (aplicado a cada usuario en el sistema y todos sus repositorios)
git config --list --system
(puede necesitarsudo
)git config --system color.ui true
git config --edit --system
2. Nivel global (valores específicos personalmente para usted, el usuario).
git config --list --global
git config --global user.name xyz
git config --edit --global
3. Nivel de repositorio (específico para ese repositorio único)
git config --list --local
git config --local core.ignorecase true
(--local
opcional)git config --edit --local
(--local
opcional)git config --list
, que muestra el sistema , mundial , y (si dentro de un repositorio) locales configuracionesgit config --list --show-origin
, también muestra el archivo de origen de cada elemento de configuracióngit config user.name
para obteneruser.name
, por ejemplo.--system
,--global
,--local
para leer ese valor a un nivel determinado.Referencia: 1.6 Comenzando - Configuración de Git por primera vez
fuente
git config --list
Mostrar todo global, sistema y local? necesito afirmación :)git config --list --show-origin
para averiguar el origen de cada elemento de configuración.Es un camino a seguir. Aunque generalmente solo abro
.gitconfig
.fuente
~/.gitconfig
o uno de los otros archivos mencionados en la sección ARCHIVOS degit help config
?~/.gitconfig
", ya que git no busca.gitconfig
en el directorio actual, independientemente de dónde se encuentre. (.gitconfig
y~/.gitconfig
nombre diferentes archivos [ generalmente ].) Los otros archivos mencionados engit help config
tienen nombres de archivo diferentes, de ahí la suposición.También puede llamar
git config -e
para abrir el archivo de configuración en su editor directamente. El archivo de configuración de Git es mucho más legible que la-l
salida, por lo que siempre tiendo a usar la-e
bandera.Entonces para resumir:
.git/config
.--global
él interactúa con~/.gitconfig
.--system
él interactúa con$(prefix)/etc/gitconfig
.(Realmente no pude encontrar lo que
$(prefix)
significa, pero parece estar predeterminado$HOME
).fuente
También puedes usar
cat ~/.gitconfig
.fuente
Git 2.6 (septiembre / octubre de 2015) agregará la opción
--name-only
para simplificar la salida de agit config -l
:Ver commit a92330d , commit f225987 , commit 9f1429d (20 de agosto de 2015) por Jeff King (
peff
) .Ver commit ebca2d4 (20 de agosto de 2015), y commit 905f203 , commit 578625f (10 de agosto de 2015) por SZEDER Gábor (
szeder
) .(Fusión por Junio C Hamano -
gitster
- en commit fc9dfda , 31 de agosto de 2015)fuente
Una cosa importante sobre
git config
:git config
tiene--local
,--global
y--system
los niveles y los archivos correspondientes.Entonces puedes usar
git config --local
,git config --global
ygit config --system
.Por defecto,
git config
escribirá a un local nivel si no se pasa ninguna opción de configuración. Los valores de configuración local se almacenan en un archivo que se puede encontrar en el directorio .git del repositorio:.git/config
La configuración de nivel global es específica del usuario, lo que significa que se aplica a un usuario del sistema operativo. Los valores de configuración global se almacenan en un archivo que se encuentra en el directorio de inicio de un usuario.
~/.gitconfig
en sistemas Unix yC:\Users\<username>\.gitconfig
en Windows.La configuración a nivel del sistema se aplica en toda una máquina. Esto cubre a todos los usuarios en un sistema operativo y todos los repositorios. El archivo de configuración a nivel del sistema vive en un
gitconfig
archivo fuera de la ruta raíz del sistema. $ (prefijo) / etc / gitconfig en sistemas Linux. En Windows, este archivo se puede encontrar enC:\ProgramData\Git\config
.Entonces su opción es encontrar ese
.gitconfig
archivo global y editarlo.O puedes usar
git config --global --list
.Esta es exactamente la línea que necesitas.
fuente
Si solo desea enumerar una parte de la configuración de Git, como alias , núcleo , remoto , etc., puede canalizar el resultado a través de grep. Algo como:
fuente
En sistemas basados en Linux, puede ver / editar un archivo de configuración
Asegúrate de estar dentro de la carpeta Git init.
Si quieres trabajar
--global config
, esen / home / userName
Esto debería ayudar con la edición: https://help.github.com/categories/setup/
fuente
Para encontrar todas las configuraciones, simplemente escriba este comando:
En mi local ejecuto este comando.
fuente
Desde Git 2.26.0 , puede usar la
--show-scope
opción:Salida de ejemplo:
Se puede combinar con
--local
para la configuración del proyecto,--global
para la configuración del usuario , para la configuración--system
de todos los usuarios--show-origin
para mostrar la ubicación exacta del archivo de configuraciónfuente