Tengo una variable de shell que apunta al directorio donde se encuentran todos mis archivos de configuración. Supongamos que la variable se crea con export RC=$HOME/rc
. Tengo un archivo global de ignorar en el directorio de configuración: ~/rc/globalgitignore
.Expansión de variable de shell en git config
Mi pregunta es, ¿cómo puedo expandir la variable RC
en mi archivo .gitconfig
?
ya he intentado lo siguiente:
excludesfile = $RC/globalgitignore
excludesfile = !$RC/globalgitignore
excludesfile = !echo $RC/globalgitignore
excludesfile = !$(echo $RC/globalgitignore)
Ninguna de estas soluciones funciona.
La única forma en que esto funciona si ingreso la ruta completa: excludesfile = ~/rc/globalgitignore
, pero luego tengo que cambiar la ruta si muevo mi directorio rc
a una ubicación diferente.
Anteriormente vinculé todos los archivos de configuración desde el directorio 'rc' a mi directorio de inicio. Para omitir estos enlaces, creé la variable 'RC' y la mayoría de mis programas la usan. Por cierto, el '~' se expande y cuando usas git config alias ... puedes usar comandos de shell y expandir variables. – SvenK
@SvenK: Por favor, lea 'git-config (1)': El hecho de que 'git-config (1)' expande '~' no 'automágicamente' significa que la expansión variable o incluso comandos de shell son compatibles, también. '~' es * manejado específicamente * por 'git-config' si y solo si un valor * se recupera con el especificador de tipo' --path' *. Esta es la * única * clase de expansión soportada por 'git-config'. He actualizado mi respuesta para incluir las secciones relevantes de 'git-config (1)' – lunaryorn
Esto es un poco frustrante, ya que no puedo simplemente especificar mi http [s]? _ Proxy variable de entorno para todo mi sistema; Tengo que por alguna razón especificarlo en mi gitconfig también. Es bastante molesto para las personas que no trabajan desde casa o una pequeña tienda de desarrollo, y/o que se sientan en diferentes redes dependiendo de dónde estén trabajando. –