Executando verificação de segurança...
2

Guia prático de Git

Introdução

O Git é uma ferramenta essencial para desenvolvedores que desejam controlar e gerenciar seu código-fonte de forma eficiente. Com ele, você pode acompanhar as alterações em seus projetos, colaborar com outros desenvolvedores e manter um histórico preciso do seu trabalho. Nesse artigo, vamos explorar os principais comandos de Git que todo desenvolvedor precisa dominar para ter sucesso no seu dia-a-dia. Além disso, vou incluir algumas dicas extras para tornar sua experiência com o Git ainda mais produtiva.

Configuração Inicial

Antes de começar a usar o Git, é importante configurar suas informações de usuário:

git config --global user.name "seu Nome" # Define o nome do usuário que será associado às suas alterações.
git config --global user.email "[email protected]" # Define o endereço de e-mail associado às suas alterações.

Essa configuração serve pra que o Git possa identificar quem fez cada alteração no código, e é importante que ela seja feita antes de começar a trabalhar em um projeto, isso vai ser a sua assinatura em cada commit.

Fluxo Básico de Trabalho

Iniciando um Repositório

git init # Inicializa um novo repositório Git no diretório atual.
git clone <url do repositório> # Clona um repositório Git existente para a sua máquina local.

Realizando Alterações

git status # Exibe o status atual do repositório, mostrando os arquivos modificados, adicionados ou removidos.
git add <nome do arquivo> # Adiciona um arquivo específico ao próximo commit.
git add . # Adiciona todos os arquivos modificados ao próximo commit.
git commit -m "mensagem do Commit" # Cria um novo commit com as alterações adicionadas.
git push # Envia os commits locais para o repositório remoto.

Atualizando o Repositório

git pull # Atualiza o repositório local com as alterações mais recentes do repositório remoto.
git fetch # Busca as alterações mais recentes do repositório remoto sem aplicá-las automaticamente no repositório local.
git merge # Combina as alterações de uma branch remoto com a branch atual.

Ramificação (Branching) e Fusão (Merging)

git branch # Lista todos as branches existentes no repositório.
git branch <nome da branch> # Cria uma nova branch.
git checkout <nome da branch> # Muda para a branch especificada.
git merge <nome da branch> # Combina as alterações da branch especificada com a branch atual.
git branch -d <nome da branch> # Exclui a branch especificada.

Dicas

git commit

O comando a seguir

git commit -am "mensagem de commit"

é equivalente a:

git add .
git commit -m "mensagem de commit"

git aliases

É possível criar aliases (apelidos) para comandos usando git:

git config --global alias.<nome do alias> <comando>

git stash

Use o comando

git stash

para "guardar" as modificações sem precisar dar commit, isso as remove da branch atual e salva para serem recuperadas depois, e quando for a hora é só usar

git stash pop

e as modificações vão retornar à branch atual.

Também é possível dar nome para cada salvamento usando o comando

git stash save <nome do salvamento>

e então ver a lista dos salvamentos com o comando

git stash list

onde cada um deles aparece com um índice do lado esquerdo. Em seguida é só escolher qual dos salvamentos deseja recuperar usando

git stash apply <índice do salvamento>

git log

Ao usar o comando git log adicione os argumentos a seguir para obter uma melhor visualização do histórico da branch

git log --graph --oneline --decorate

Para dar squash em um conjunto de commits em uma determinada branch usar o comando

git rebase <nome da branch> --interactive

assim é possível escolher entre os commits quais serão mantidos e quais serão combinados.

git clean

Para deletar apenas os arquivos não rastreados:

git clean -f

Para deletar arquivos e pastas não rastreados:

git clean -df

Para deletar arquivos ignorados:

git clean -f -X

Para remover arquivos ignorados e não ignorados:

git clean -xf

git checkout

O comando a seguir volta para a branch anterior ao último checkout.

git checkout -

Também é possível desfazer todas as alterações em um determinado arquivo usando o comando:

git checkout -- <nome do arquivo>

lazygit

O lazygit é uma ferramenta de linha de comando para visualizar as alterações feitas no repositório, semelhante ao git diff mas visualmente agradável e muito mais interativo.

No ubuntu a instalação é simples, basta executar os seguintes comandos a seguir:

LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep '"tag_name":' |  sed -E 's/.*"v*([^"]+)".*/\1/')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
sudo tar xf lazygit.tar.gz -C /usr/local/bin lazygit

Para instruções detalhadas de instalação consulte a página: https://github.com/jesseduffield/lazygit

Pra usar a ferramenta é só entrar na pasta do repositório e executar:

lazygit

Alterando commits

Se for o último commit é só usar o comando

git commit --amend -m "nova mensagem"

Para commits mais antigos:

1 - Copie o hash do commit que você deseja modificar usando

git log

2 - Use o comando

git rebase -i "hash do commit a ser modificado"~1

lembrando que o “~1” no final é necessário para que o commit que você modificar apareça na lista durante o rebase

3 - Na lista que vai abrir em seguida, do lado do commit que você quer modificar, onde estiver escrito pick escreva reword

4 - A seguir salve e feche o arquivo do rebase, assim que você fizer isso vai abrir automaticamente o editor com o commit que você quer editar aberto

5 - Faça as alterações desejadas, em seguida salve e feche o arquivo. A partir daí o commit foi modificado

6 - Use

git push -f

para sobrescrever o histórico do git no repositório remoto

Exibir a branch do git no terminal (Bash)

Basta adicionar o código a seguir no arquivo .bashrc:

parse_git_branch() {
     git branch 2> /dev/null | sed -e '/^[^*]/d' -e 's/* \(.*\)/(\1)/'
}
export PS1="\u@\h \[\e[32m\]\w \[\e[91m\]\$(parse_git_branch)\[\e[00m\] > "

Reinicie o terminal ou use o comando a seguir:

source ~/.bashrc

Agora é só entrar em uma pasta que contenha um repositório git e conferir o resultado.

Conclusão

Neste artigo, vimos os principais comandos de Git que você precisa conhecer para começar a usar o Git em seus projetos, além de algumas dicas extras que podem tornar sua experiência com o Git ainda mais produtiva. Mas o Git é uma ferramenta básica no fluxo de trabalho diário de qualquer desenvolvedor, então dominá-la é essencial, por isso recomendo que você não pare por aqui e continue estudando e praticando para se tornar um expert em Git.

Em caso de dúvidas ou sugestões fique à vontade pra deixar nos comentários ou entrar em contato pelo email [email protected].

Carregando publicação patrocinada...
1

Você não sabe como me ajudou com esse guia, perfeitamente didatico, estou começando na area e tenho noções do basico de algumas tecnologias e o github e uma delas, agora sinto meu conhecimento bem mais solido com essa eplicação simples e completa oque tenho dificuldade de achar pela internet.

1

Fico muito feliz de ter te ajudado cara! Começar na área é difícil mesmo, mas não desiste que vale à pena. Vou começar a postar mais aqui, mas se quiser também escrevo no meu blog: https://fernandopaiva.dev, ainda não tem muita coisa lá mas vou continuar postando. Eu costumo escrever no intuito de ajudar a galera mais iniciante mesmo, então talvez seja interessante pra ti. Aliás fica à vontade pra sugerir outros tópicos pra eu escrever, seria muito massa.

Obrigado pelo feedback e sucesso pra ti.
:D