ver ¿Hay un atajo para el nombre de la rama git?




git ver archivos modificados (4)

Solo quiero añadir que este archivo normalmente ya viene con git. No necesitas descargarlo de nuevo. Solo necesitas localizarlo y ejecutarlo.

En mi sistema (Centos OS) los siguientes pasos funcionan:

$ locate completion.bash
/usr/share/doc/git-1.7.4.1/contrib/completion/git-completion.bash
$ source /usr/share/doc/git-1.7.4.1/contrib/completion/git-completion.bash

Obviamente, como ya se señaló, es mejor agregar esta línea a su archivo .bashrc en su directorio de inicio, para que no tenga que repetirla cada vez que abra un nuevo shell.

En mi caso, agregaría el último comando a mi archivo .bashrc

source /usr/share/doc/git-1.7.4.1/contrib/completion/git-completion.bash

Tiendo a tener nombres de rama largos para git (por ejemplo, step110_create_search_engine_to_replace_google).

¿Cómo debo referirme a él simplemente como el paso 110 en las declaraciones de verificación / confirmación?


Prueba este alias:

cb = "!checkoutbranch() { local branches=`git branch | grep -i $1 | tr -d '* '`; if [[ `echo \"$branches\" | wc -l | tr -d ' '` != 1 ]]; then echo \"Matched multiple branches:\"; git branch | grep --color -i $1; exit 1; fi; git checkout $branches; }; checkoutbranch"

Checkout la rama de develop :

git cb dev

git symbolic-ref puede ayudar si eres demasiado perezoso incluso para presionar una tecla TAB . Puede crear un alias a la rama.

$ # Define short name 's1'
$ git symbolic-ref refs/heads/s1 refs/heads/step110_create_search_engine_to_replace_google
$
$ # You can use short name 's1' afterwards
$ git reset --hard s1
$ git checkout -b s1-experiment s1
$
$ # Remove the short name
$ git symbolic-ref -d refs/heads/s1

Se puede hacer referencia a las ramas remotas de la misma manera para omitir la escritura remote/ TAB . (Recomiendo prefijo con refs/tags/ en este caso para evitar modificar accidentalmente la referencia remota)

$ git symbolic-ref refs/tags/base refs/remotes/github/a-very-long-named-remote-branch
$ git rebase -i base

Si está en un sistema similar a Unix (Linux, Mac OS X, quizás otros), está el conjunto de reglas autocompletar de contrib/complete/git-completion.bash , que le permitirá completar automáticamente los comandos git (puede escriba git checkout step110<tab> y su shell autocompletará el nombre de la rama.

Para activar esto:

  • Si tienes la fuente git, en contrib/complete/ hay un archivo git-completion.bash . Ponga eso en un lugar seguro (como ~/.git-completion ), y luego agregue la siguiente línea a su archivo ~/.bashrc : source ~/.git-completion . Reinicie su sesión de shell o ejecute source ~/.git-completion para que se ejecute en la sesión de shell actual.
  • Si no tiene la fuente git, puede obtener el script desde here (github.com). A continuación, siga las mismas instrucciones que el anterior.

Si tienes la suerte de usar zsh lugar de bash , sé que oh-my-zsh tiene complementos de autocompletado de git (no estoy seguro de cómo activarlos sin oh-my-zsh ).

Fuentes:





git