tutorial sig español git github

sig - ¿Es posible incluir un archivo en su.gitconfig



github sin in (4)

Me gustaría incluir un archivo en mi .gitconfig que tenga mi configuración de github, ¿es esto posible?

¿Puedo hacer algo como esto?

[core] include = /path/to/file


Actualización 2012:

Vea la answer :

Incluye

Puede incluir un archivo de configuración de otro configurando la variable include.path especial al nombre del archivo que se incluirá.
El archivo incluido se expande inmediatamente, como si su contenido se hubiera encontrado en la ubicación de la directiva de inclusión.
Si el valor de la variable include.path es una ruta relativa, se considera que la ruta es relativa al archivo de configuración en el que se encontró la directiva de inclusión.
El valor de include.path está sujeto a la expansión de tilde: ~/ se expande al valor de $HOME , y ~user/ al directorio de inicio del usuario especificado.

No lo creo.

Prefiero poner esa configuración en el archivo ~/.gitconfig

Archivo de configuración específico del usuario. También llamado archivo de configuración "global".

De esa manera, completa el archivo específico del proyecto .gitconfig, sin que se publique cuando se envíe a GitHub. Vea también esta respuesta SO para más información sobre el archivo de configuración global.
Git tiene 3 archivos de configuración .

bjeanes añade en los comentarios:

Parece que a todos se les escapó el punto de esta pregunta.
David obviamente desea subir un repositorio de todos sus archivos de puntos ( gemrc , gemrc , etc.) INCLUYENDO su .gitconfig para que pueda tener todos sus ajustes en todas sus máquinas.
Una forma de insertar partes de un archivo .gitconfig al incluir e ignorar las entradas privadas es lo que él (y yo, para el caso) busca.

Una forma posible sería utilizar un controlador de filtro de borrado / limpieza para descifrar / cifrar un archivo con información confidencial privada (consulte este hilo ), para completar un archivo local como ~ / .gitconfig con las partes descifradas que son relevantes para ese archivo. expediente.

De esa manera, puede tener un repositorio Git con todos sus archivos de puntos, más un archivo con información cifrada destinada a ser descifrado y agregado a dichos archivos de puntos.

En .gitattributes (o .git/info/a.. ) use:

myPrivateInfosFile filter=gpg diff=gpg

En su archivo .config repo:

[filter "gpg"] smudge = gpg -d -q --batch --no-tty clean = gpg -ea -q --batch --no-tty -r C920A124 [diff "gpg"] textconv = decrypt

(una solución basada en GPG significa, por supuesto, que ha comunicado sus claves privadas / públicas por otro medio en la computadora de destino donde desea restaurar todos sus archivos de puntos mediante la clonación de este repositorio especial)

En realidad, en su caso, la secuencia de comandos de borrado debe completarse, ya que, después de descifrar ese archivo, debe continuar y agregar partes relevantes a su archivo global ~/.gitconfig (a menos que sobrescriba el archivo de configuración global con otra ubicación ) u otra archivos de puntos para esa materia.

https://kerneltrap.org/mailarchive/git/2008/3/13/1153274/thread (los inconvenientes de gpg se discuten más en este hilo ) (esto es diferente a tener un repositorio Git incrustado completo, como se discute aquí )


Creo que puedes lograr esto usando la herramienta hub de defunkt . Este es un contenedor para el comando git que, entre otras cosas, le permite tener las variables de entorno GITHUB_USER y GITHUB_TOKEN . Lo que anulará la configuración en el archivo .gitconfig local.

Luego, para que sea perfecto, el usuario al que apuntaste con alias git=hub en su configuración ZSH . Debería poder luego obtener un archivo local donde establezca sus variables de entorno y empuje su repositorio al mundo público con toda su información privada intacta.

** NOTA para los usuarios de Homebrew en OSX, puede instalar la herramienta a través de brew install hub .


Git (1.7.10+) ahora supports esta sintaxis en .gitconfig :

[include] path = /path/to/file

Vea here para una descripción detallada del cambio de git y sus casos de borde.

Por cierto, un par de sutilezas que vale la pena señalar:

  1. La expansión de variables de entorno, por ejemplo, $HOME , no es compatible. (Expansión de ~ apareció en Git 1.7.10.2.)

  2. Si se especifica una ruta relativa, entonces es relativa al archivo .gitconfig que tiene la declaración [include] . Esto funciona correctamente incluso a través de las ~/.gitconfig encadenadas, por ejemplo, ~/.gitconfig puede tener:

    [include] path = subdir/gitconfig

    y subdir/gitconfig puede tener:

    [include] path = nested_subdir/gitconfig

    ... lo que hará que se subdir/nested_subdir/gitconfig .

  3. Si git no puede encontrar el archivo de destino, ignora silenciosamente el error. Esto parece ser por diseño.


Puedes cargarlo desde la línea de comandos:

$ git config --local include.path "/path/to/.gitconfig"

Utilice "$PWD"/.gitconfig en "$PWD"/.gitconfig lugar, si desea cargar el archivo desde el directorio actual.

Después de ejecutar el comando anterior, las siguientes líneas se agregan a su archivo .git/config :

[include] path = /path/to/.gitconfig