- Veja como comparar commits, excluir branches antigas e criar aliases para economizar tempo
- Git aliases
- Crie aliases para comandos usados no dia a dia e economize tempo de trabalho no terminal
- Ex.: em vez de digitar
git checkout master, digite co master
- Edite ou adicione comandos diretamente no arquivo
~/.gitconfig
- Verificar o estado do repositório no prompt de comando
- Para ver o estado do repositório, execute
git-prompt.sh
- Se você usa Linux e instalou o Git com um gerenciador de pacotes, ele talvez já exista no diretório
/etc/bash_completion.d/
- Comparar commits pela linha de comando
- Use o comando
git diff para comparar diferenças entre versões do mesmo arquivo ou entre commits
- Se quiser usar uma ferramenta mais visual para comparar diffs, você pode usar
git difftool
- Meld: visualizador/editor útil para comparar diffs visualmente
- Fazer stash de alterações não commitadas
- Quando você não quer dar commit em um recurso ainda incompleto, mas precisa guardar as alterações atuais, use o comando
git stash para remover temporariamente as mudanças
- Depois de concluir o trabalho de modificação e voltar às alterações anteriores, execute
$ git stash pop
- Fazer pull com frequência
- Ao usar GitLab Flow, você trabalha em novos recursos em uma branch de funcionalidade
- Dependendo do tempo necessário para implementar o recurso, várias mudanças podem surgir na branch
master
- Para evitar que conflitos cresçam, é preciso trazer com frequência as mudanças da branch
master para a branch de trabalho, assim você evita conflitos cedo e facilita o merge da branch com master
- Autocompletar comandos
- Com scripts de autocompletar, você pode usar comandos de forma fácil e rápida no bash, tcsh e zsh
- Para digitar
git pull, basta inserir apenas os primeiros caracteres, como git p, e pressionar tab
- Para exibir todos os comandos disponíveis, digite
git no terminal e depois pressione tab+tab
- Configurar um
.gitignore global
- Se você não quiser commitar arquivos como
.DS_Store ou arquivos swp do Vim, pode configurar isso em um arquivo .gitignore global
- Usar o recurso autosquash do Git como configuração padrão
- Com autosquash, fica mais fácil fazer squash de commits durante um rebase interativo
- Você pode ativá-lo a cada rebase com
git rebase -i —autosquash, mas é mais prático deixá-lo ligado por padrão
- Excluir da branch local o que foi removido do remoto ao fazer fetch/pull
- Branches que já não existem mais no repositório remoto podem continuar sobrando no repositório local
- Para apagá-las a cada fetch/pull, use
$ git config —global fetch.prune true
- Usar o Git blame de forma mais eficiente
- O Git blame identifica quem alterou cada linha de um arquivo
- Opções
$ git blame -w # ignorar espaços em branco
$ git blame -M # ignorar movimentação de texto
$ git blame -C # ignorar movimentação de texto para outro arquivo
- Adicionar um alias para fazer checkout local de merge requests
- Um merge request inclui todo o histórico do repositório e os commits adicionados à branch associada ao MR
- Quando o projeto de origem é um fork do projeto de destino, é possível fazer checkout local de um merge request público
- Alias para HEAD
@ é igual a HEAD. Usá-lo durante um rebase torna o trabalho muito mais fácil
- Reverter arquivos (
reset)
- Ao modificar o código, você pode perceber que há um problema nas mudanças já feitas e precisar reverter um arquivo
- Em vez de clicar em undo em tudo o que foi alterado, você pode dar reset no arquivo para o
HEAD daquela branch
- Ex.)
$ git reset —hard HEAD
- Para reverter apenas um arquivo, execute o seguinte comando
- Ex.)
$ git checkout HEAD — path/to/file
- Plugin
git-open
- Se quiser acessar rapidamente o site que hospeda o repositório em uso, você pode usar
git-open
- Plugin
git-extras
- Se quiser aumentar a usabilidade do Git com mais comandos, use o plugin
git-extras
- Ele oferece
git info (mostra informações do repositório) e git effort (número de commits por arquivo)
Ainda não há comentários.