Dev (Back & Front)ARTIGO

Dica Git da semana: Aliases

A dica desta semana é sobre como criar atalhos para os comandos mais usados.

Aliases

Há vários momentos em que você deseja ser capaz de executar o mesmo comando git repetidamente, muitas vezes com os mesmos argumentos. Embora seja possível escrever scripts shell ou usar aliases shell a fim de ser capaz de se lembrar destes, eles podem, por vezes, não serem suficientes.

A comando de linha git pode ser configurada para utilizar os seus próprios aliases para as tarefas mais comuns. Os aliases são armazenados em arquivos git config, que incluem ~/.gitconfig e path/to/project/.git/config. Como resultado, é possível armazenar aliases por projeto, bem como em um estado global.

Para configurar um alias, você pode editar o arquivo git config diretamente, ou executar git config –global ou git config para as configurações globais ou por projeto, respectivamente. Um alias é configurado da seguinte maneira:

git config --global alias.ci commit
git conifg --global alias.cia commit -a
git config alias.hub push github

No exemplo acima, rodar git ci tem o mesmo efeito de git commit, e git cia tem o mesmo efeito de git commit -a. Vez que estes são propriedades –global, esses comandos irão funcionar em todos os repositórios na mesma máquina.

Expansão Alias

Às vezes, é desejável executar múltiplos comandos git , o que a forma curta do alias não permite. Ou você pode querer fazer alguma coisa com o resultado, como fazer um pipe através de um utilitário alternativo. É aí que os aliases do shell podem ajudar.

Se um alias git é prefixado com um ponto de exclamação, então o alias será expandido como se todo o comando tivesse sido dado em sua linha. Isso te permite fazer pipe ou sequência de operações que podem ser bastante úteis:

# Define 'git last' to show last commit message
git config alias.last show -s HEAD^{commit}

# Now lastwc is the word count of that message
git config alias.lastwc '!git last | wc'

# We can also prune off headers and pipe to 'pbcopy'
# which puts it in the clipboard on OSX
git config alias.lastcopy '!git last | tail -n+5 | pbcopy'

Essas expansões também funcionam no Windows, com a versão MinGWSys de Git, e a versão Cygwin, na qual os aliases shell padrão não iria funcionar.

Você pode descobrir o que você faz com mais freqüência em Git, estabelecendo este alias:

git config alias.freq 'history | cut -c 8- | grep git | sort | uniq -c  | sort -n -r | head -n 5'

Ao executar git freq, serão mostrados os cinco comandos git que você usa mais frequentemente, e que você poderia gostar de considerar para a criação de aliases no futuro.

?

Texto original publicado em http://alblue.bandlem.com/2011/04/git-tip-of-week-aliases.html

é guru em Eclipse e fanático pelo Mac.

Ver perfil