Git é uma ferramenta popular e poderosa e, possivelmente, o sistema de controle de versão de maior sucesso que já existiu. O poder do Git é evidente em seu conjunto de comandos. Atualmente, consiste em cerca de 150 comandos, do comum git-status para o obscuro git-get-tar-commit-id. Com cada comando suportando seu próprio conjunto de opções, há uma quantidade impressionante a ser lembrada.
Felizmente, o Git tem uma maneira de simplificar as coisas. Um alias Git pode atuar como um atalho para qualquer subcomando, com qualquer conjunto de opções. Com comandos externos, você pode usar invocações ainda mais poderosas. Aqui estão 10 dos apelidos mais úteis que você pode configurar.
Como definir um alias
Definir um alias é tão simples quanto seguir este padrão:
git config --global alias.co 'checkout'
O --global opção define o alias para todo o uso do Git pelo usuário atual. Para fazer um alias se aplicar a todos os usuários do sistema, use --sistema em vez de. Para adicionar um alias específico do repositório atual, use --local.
Se você souber onde está um arquivo de configuração, poderá editá-lo diretamente. A configuração do sistema está em um local global, normalmente /usr/local/etc/gitconfig. Sua configuração específica do usuário ficará em um arquivo em seu diretório inicial, como ~ / .gitconfig. A configuração local existe dentro de cada repositório, no .git / config Arquivo.
Veja também: Como instalar e configurar o Git no Linux
1. Um alias para trocar de ramificação rapidamente
Dependendo do seu fluxo de trabalho, você pode alternar entre ramos muitas vezes ao longo de cada sessão de trabalho. Para aliviar um pouco o esforço e praticar com o tipo mais simples de alias, tente o seguinte:
alias.co 'checkout'
Digitando git co feature1 agora mudará para o feature1 galho. O alias encurta o nome do subcomando, que continua a funcionar com argumentos extras.
2. Ver Status Condensado
Por padrão, o git status comando produz saída detalhada. Ele explica o estado em detalhes, com informações úteis para qualquer pessoa não familiarizada com o Git. No entanto, se você deseja economizar espaço e já está familiarizado com a terminologia Git, convém configurar um alias para uma versão mais curta:
alias.st status -sb
Esta é apenas uma variação muito pequena de git-status, mas o -s opção produz uma saída curta que torna as coisas muito mais breves. Terá algo como este status git padrão:
E produza isso em vez disso:
O -b opção mostra ramificação e informações de rastreamento que -s caso contrário, suprimiria.
3. Mostrar registro de resumo
Git oferece muitas maneiras de inspecionar o histórico de um projeto por meio do git-log comando. Ele pode filtrar os commits que relata e pode exibir muitos dados diferentes associados a cada commit. Às vezes, no entanto, você quer um registro o mais compacto possível. O --uma linha opção fornece isso, mas é muito mais rápido criar um alias, já que é uma que você pode usar com bastante frequência:
alias.ll 'log --oneline'
A saída apresenta um commit por linha, com o título da mensagem de commit e um hash abreviado. Se parece com isso:
4. Desfazendo a última alteração
O git reset comando é valioso, mas não é o mais fácil de entender. Às vezes, você só quer um desfazer simples que leva de volta o último commit. O --suave A opção garante que o Git remova apenas o último commit, sem alterar nada sobre os arquivos locais em sua árvore de trabalho. CABEÇA ~ 1 é simplesmente uma forma de referenciar o commit antes do HEAD.
alias.undo 'reset --soft HEAD ~ 1'
5. Registro do Último Compromisso
Se você está pegando um projeto do dia anterior, pode ser útil examinar o último commit. Com um git-log alias, você pode obter um relatório rápido e detalhado do último commit:
alias.last 'log -1 HEAD --stat'
O -1 CABEÇA opção simplesmente solicita o último commit e --Estado lista os arquivos que o commit afetou, com o número de linhas inseridas e excluídas para cada um.
6. Um compromisso fácil de uma só vez
Você provavelmente se pegará adicionando arquivos e enviando-os na próxima etapa com bastante frequência. A menos que seu fluxo de trabalho seja mais complicado, convém simplificar esse processo com um alias:
alias.ac '! git add -A && git commit'
Os componentes individuais não exigem muita explicação, além de observar que o -UMA opção passada para git-add irá atualizar automaticamente o índice para que todos os arquivos correspondam à cópia de trabalho. Ele atende à exclusão, modificação e criação de arquivos.
Uma coisa interessante a se notar sobre esse alias é que ele combina dois comandos. Ele faz isso usando o ! símbolo como o primeiro caractere do alias. Isso informa ao Git que o que se segue é um comando de shell externo em vez de um subcomando.
7. Formatação Fancy Branch
Outro comando com muita flexibilidade, git-branch pode formatar sua saída de muitas maneiras além do padrão esparso.
alias.br "branch --format = '% (HEAD)% (color: yellow)% (refname: short)% (color: reset) -% (conteúdo: assunto)% (color: green) (% (committerdate: relativo)) [% (authorname)] '--sort = -committerdate "
Examine o formato do início ao fim. Observe que ele inclui muitos campos especiais. %(CABEÇA) adiciona um asterisco ao lado da ramificação atual.
Aliases são uma ótima maneira de experimentar a formatação de comandos como git-branch. Você desenvolverá preferências ao longo do tempo, portanto, é fundamental manter o controle de quais opções produzem sua saída preferida.
8. Resumindo as alterações por contribuidor
Uma variante do git log, git-shortlog agrupa os commits que exibe por autor. Isso é ideal para notas de lançamento ou simplesmente para ficar de olho em quem fez o que recentemente.
Algumas opções criam um resumo do autor para todos os fins muito conveniente, perfeito para uso regular por meio de um alias. O -e opção mostra endereços de e-mail além de nomes. O --resumo a opção apenas exibe uma contagem total em vez do assunto de cada confirmação. E - numerado ordena a produção final pelo número total de contribuições. Você pode usar este alias:
alias.contrib 'shortlog -e --summary --numbered'
Para produzir a seguinte saída:
9. Listar ramos ordenados pela última modificação
Agora, para mais trabalho com branches, desta vez usando um subcomando de nível inferior. Este alias complicado é outro exemplo de um comando externo - um pipeline, neste caso. Primeiro, o git-for-each-ref o comando percorre todas as ramificações conhecidas. Faz isso em autoral ordena e formata a saída para mostrar essa data junto com o hash de confirmação. Finalmente, ele usa sed despir refs / heads / do nome de cada filial.
alias.b '! git for-each-ref --sort = "- authordate" --format = "% (authordate)% 09% (objectname: short)% 09% (refname)" refs / heads | sed -e "s-refs / heads / -" '
Veja também: Estes exemplos Sed farão de você um usuário avançado do Linux
10. Um alias para mostrar todos os aliases
Com todo esse suporte para aliases, é surpreendente que o Git não ofereça uma maneira fácil de visualizar todos os aliases que você configurou. Não se preocupe, você pode consertar isso com um alias! O git config comando lista todas as configurações atuais. Você pode filtrar valores usando o --get-regexp opção, então o alias a seguir oferece uma opção útil git alias comando:
alias.alias 'git config --get-regexp ^ alias.'
Economize tempo e frustração com os aliases do Git
Os aliases do Git economizam tempo, eliminando a necessidade de digitar comandos longos e complicados. Git tem um grande número de subcomandos, mas os aliases são fáceis de reutilizar e manter. Você pode até mesmo agrupar aliases em seu projeto por meio da configuração local, permitindo que você compartilhe atalhos e práticas padrão.
Assim como os apelidos do Linux, os apelidos do Git permitem que você digite menos e faça mais. Tente experimentar os aliases acima e explore o conjunto completo de comandos do Git para ver a riqueza de funcionalidades disponíveis.
Leve sua habilidade em Git do iniciante ao avançado com este guia abrangente.
Leia a seguir
- Programação
- GitHub
- Dicas de codificação
Bobby é um entusiasta da tecnologia que trabalhou como desenvolvedor de software por quase duas décadas. Ele é apaixonado por jogos, trabalha como Editor de Críticas na Switch Player Magazine e está imerso em todos os aspectos da publicação online e desenvolvimento web.
Assine a nossa newsletter
Junte-se ao nosso boletim informativo para dicas de tecnologia, análises, e-books grátis e ofertas exclusivas!
Clique aqui para se inscrever