Este es el contenido de mi fichero .gitconfig:
[color]
        ui = auto
[core]
        pager = less -FMRiX
        excludesfile = /home/<myuser>/.config/git/excludes
[push]
        default = simple
[alias]
        hist = log --pretty=format:'%C(yellow)[%ad]%C(reset) %C(green)[%h]%C(reset) | %C(cyan)%s %C(bold red){{%an}}%C(reset) %C(magenta)%d%C(reset)' --graph --date=relative
        head = hist -10 --topo-order
        co = checkout
        wd = diff --color-words --word-diff-regex=[^[:space:],.\\:\\'\\\"\\+\\=\\/]+
        fork = !zsh -c '"orig_helper=${2:+${1}}; orig=${orig_helper:-main}; target=${2:-${1:-HEAD}}; diff -U 1 <(git rev-list --first-parent ${orig}) <(git rev-list --first-parent ${target}) | tail -1"' -
        showfork = !zsh -c 'git show $(git fork ${1} ${2})' -
        difffork = !zsh -c '"target=${2:-${1:-HEAD}}; git diff $(git fork ${1} ${2}) ${target}"' -
[user]
        email = my@email.com
        name = My name
[filter "lfs"]
	clean = git-lfs clean -- %f
	smudge = git-lfs smudge -- %f
	process = git-lfs filter-process
	required = true

El fichero /home/<myuser>/.config/git/excludes equivale a un .gitignore aplicable a todos los repositorios.

El alias fork devuelve el hash del commit en el que diverge la rama actual de main si no se proporciona ninguna rama. Si se proporciona una rama devuelve el hash del commit en el que diverge la rama proporcionada de main. Y si se proporcionan dos ramas devuelve el hash del commit en el que la segunda rama diverge de la primera rama proporcionada. Ejemplos:

      E---F---G rama HEAD
     /
A---B---C---D main
         \
          H---I otra_rama

Estando HEAD en el commit G, fork master devuelve el hash del commit B, es decir, el commit en el que la rama actual diverge de la rama indicada.

$ git fork
<hash del commit B>
$ git fork otra_rama
<hash del commit C>
$ git fork rama otra_rama
<hash del commit B>

El alias showfork hace un show del commit en el que divergen las ramas indicadas. Y el alias difffork hace un diff entre el commit en el que divergen las ramas indicadas y el commit referido por la última de las ramas indicadas.

Dejar una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Puedes utilizar estas etiquetas y atributos HTML:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.