¿Cómo puedo configurar un elemento de configuración de git como una función?

¿Cómo puedo configurar un elemento de configuración de git como una función?

Estoy intentando configurar elgist gema, pero no quiero que mi contraseña de GitHub se almacene como una variable de entorno o un elemento de configuración de Git. ElLÉAMEdel repositorio de GitHub explica,

También puede definir github.password como un comando que devuelve la contraseña real en la salida estándar estableciendo la variable en una cadena de comando con el prefijo !.

El problema que tengo es averiguar dónde colocar la función descrita. ¿Algun consejo?

Aquí está la función descrita en el enlace anterior (obtiene el elemento github.password del llavero de Mac OS):

password = !security 2>&1 >/dev/null find-generic-password -gs github.password | ruby -e 'print $1 if STDIN.gets =~ /^password: \\\"(.*)\\\"$/'

Respuesta1

Esta línea pertenece a $HOME/.gitconfig en la githubsección. El escape de Shell y demás hará la vida más difícil, por lo que si $HOME/.gitconfig no existe o si no tiene una githubsección, créela con

git config --global github.password foo

Eso creará el archivo si es necesario con el formato correcto y agregará una línea

password = foo

Edite el archivo y reemplácelo password = foocon el recomendado en github.

información relacionada