Git
Chapters ▾ 2nd Edition

A1.5 Git en otros entornos - Git en Zsh

Git en Zsh

Git también viene con una librería de completación de pestañas para Zsh. Simplemente copie contrib/completion/git-completion.zsh a su directorio local y anclelo de su .zshrc. La interfaz de Zsh es un poco más poderosa que la de Bash:

$ git che<tab>
check-attr        -- display gitattributes information
check-ref-format  -- ensure that a reference name is well formed
checkout          -- checkout branch or paths to working tree
checkout-index    -- copy files from index to working directory
cherry            -- find commits not merged upstream
cherry-pick       -- apply changes introduced by some existing commits

Las completaciones de pestañas ambiguas no sólo son listadas; tienen descripciones muy útiles y puede navegar graficamente por la lista presionando tab repetidas veces. Esto funciona con comandos de Git, sus argumentos y nombres de cosas dentro del repositorio (como referencias y repositorios remotos), así como nombres de archivos y todas las otras cosas que Zhs sabe como "pestaña-completar".

Zsh resulta ser compatible con Bash cuando se trata de personalización de prompts, pero este le permite tener un prompt del lado derecho también. Para incluír el nombre del branch en el lado derecho, añada estas líneas a su archivo ~/.zshrc:

setopt prompt_subst
. ~/git-prompt.sh
export RPROMPT=$'$(__git_ps1 "%s")'

Esto lleva a una muestra del branch actual en el lado a mano derecha de la ventana del terminal, siempre que tu caparazón esté dentro de un repositorio Git. Se ve un poco como esto:

Prompt `zsh` personalizado.
Figure 163. Customized zsh prompt.

Zsh es lo suficientemente potente, tanto así que existen marcos metodológicos enteros dedicados a mejorarlo. Uno de estos se llama "oh-my-zsh", y puede ser encontrado en https://github.com/robbyrussell/oh-my-zsh. El sistema plug-in de oh-my-zsh viene con una poderosa completación de pestañas git, y tiene una variedad de "temas" de prompt, de los cuales muchos muestran datos de control de versiones. An example of an oh-my-zsh theme. es tan sólo un ejemplo de lo que puede realizarse con este sistema.

Ejemplo de un tema oh-my-zsh.
Figure 164. An example of an oh-my-zsh theme.