Git: ferramentas & dicas
Personalizando o terminal
A primeira dica envolve atualizar o prompt do terminal para exibir o branch atual e se ele possui alguma modificação ou não. O resultado final é parecido com o apresentado abaixo:
Existem inúmeras soluções disponíveis para exibir o branch e o status do seu repositório no terminal. Vou indicar a mais fácil, um script desenvolvido por Jim Myhrberg. O código-fonte está disponível no GitHub.
O primeiro passo é clonar o repositório:
Feito isso, basta editar seu .bash_profile (ou .bashrc, ou .profile):
Aliases
Para agilizar o uso de comandos do git no dia-a-dia podemos criar aliases, ou atalhos, que apontam para comandos completos. Vamos começar adicionando alguns aliases simples. Para isto, vamos abrir o arquivo .gitconfig na nossa home e adicionar (ou atualizar) a seguinte seção:
Agora, digitando git co ou git st estaremos executando os comandos checkout e status respectivamente.
Os aliases não precisam ser comandos simples. Podemos passar também opções e parâmetros. Os exemplos abaixo oferecem uma visão melhor do histórico de um repositório:
Finalizando, dois aliases muito úteis. O alias this cria um repositório e o alias ignore adiciona entradas e cria, caso não exista, o arquivo .gitignore.
git extras
https://github.com/visionmedia/git-extras/
Essa ferramenta implementa diversos novos comandos no leque padrão do git. TJ Holowaychuk, o criador do projeto, disponibilizou um post introdutório com um screencast: http://tjholowaychuk.com/post/26904939933/git-extras-introduction-screencast.
Alguns exemplos de comandos são:
git autocomplete
Por ser uma ferramenta de linha de comando, o git fica ainda mais poderoso quando habilitamos o recurso de autocomplete para seus comandos e repositórios.
No repositório oficial do git você encontra o arquivo git-completion.bash. A instalação é simples, basta fazer o download e executá-lo no seu .bash_profile ou .bashrc. Feito isso, tanto comandos quanto branches e tags estarão a apenas um
Hooks
Uma ferramenta poderosa e pouco explorada por desenvolvedores é a criação de hooks - comandos que são executados de acordo com certas ações do git.
Por exemplo, podemos criar um hook que executa alguma ferramenta de lint antes de enviar o commit, assegurando, assim, um padrão de código no repositório.
O exemplo abaixo executa uma validação pyflakes + pep8 em qualquer código python presente no commit.
Os hooks ficam na pasta .git/hooks do repositório e podem ser escritos em qualquer linguagem suportada por seu sistema operacional.