Git no Visual Studio
Facilitando a vida com ferramentas da IDE
Publicado em: terça-feira, 8 de dezembro de 2020
Migrar o controle de versão para Git pode trazer desafios em equipes pouco acostumadas com interfaces em linhas de comando. Felizmente, o Visual Studio tem ferramentas que facilitam a a vida de quem prefere apertar botões em vez de escrever na telinha preta do bash.
Segue aqui um tutorial básico de uso do git pela interface gráfica do Visual Studio.
1. Clonar projeto
Clonar um repositório remoto significa fazer uma cópia dele para sua máquina.
No Azure:
- Selecione o repositório que quer clonar para seu computador
No Visual Studio:
- Clique em [Git]
- Clique em [Clonar Repositório]
- Cola o endereço do repositório
- Defina o diretório destino
- Clique em [Clone]
Linha de comando: git clone
2. Branches
Criar novo branch
No Visual Studio:
- Clique em [Git]
- Clique em [New Branch]
- Defina o nome do seu branch
- Defina a que branch remoto ela vai se associar.
Ao associar um branch local com um remoto, é permitida a atualização de branches remotos. Para atualizar o branch origin/DEV, por exemplo, é necessário criar um branch DEV local e dar um push através dele.
Linha de comando: git checkout –b <nome_do_branch>
Alternar entre branches
Ao alternar entre branches, pode-se gerar um commit na branch desejável. Assim como atualizar algum branch remoto associado a ele.
Por exemplo, se estou no branch master mas quer atualizar o branch DEV, primeiro tenho que alternar para a branch DEV para depois dar um push.
Se estou no branch DEV mas quero gerar um commit num branch de funcionalidade, primeiro tenho que alternar para a branch de funcionalidade para depois dar um commit.
Para alternar branch:
- Clique sobre o nome no branch atual
- Selecione o branche desejado
Linha de comando: git checkout <nome_do_branch>
3. Commit
Diferentemente do SVN, o comando de commit do git só atualiza a sua cópia local de repositório. Ou seja, nenhum outro integrante da equipe poderá ver as alterações. Para quem veio do SVN, é recomendado dar o comando push logo após dar um commit.
Alterações locais
No Visual Studio:
- Clique em [Git]
- Clique em [Commit ou Stash]
- Digite uma descrição clara
- Verifique os arquivos que você quer que sejam ‘commitados’. Caso queira excluir algum, basta clicar nele e escolher a opção “desfazer mudanças”. Os arquivos selecionados sairão da sua lista de ‘commitados’
- Em seguida, clique em [Commitar] logo abaixo da caixa de texto
Linha de comando:
git add *
git commit –m “<descrição do commit>”
É possível visualizar os commits em gráfico
Na parte de cima, temos os Commits apenas em repositório local
Na parte de baixo, os Commits em repositório local e remoto
Linha de comando:
git log –graph –oneline –all
4. Navegar por commits
As vezes se faz necessário atualizar o código na máquina para uma versão anterior. Para isso, é necessário um branch auxiliar temporário.
- Passo 1: Primeiro escolhe um commit para navegar;
- Passo 2: Depois crie um branch para “marcar” aquele commit
- Passo 3: Então, alterne para o novo branch criado.
Voltando para versão mais recente:
- Clique em [Git]
- Clique em [Gerenciar branches] ou [Exibir Histórico]
- Clique em branch com versão mais atual
- Clique em [Checkout] para alternar branch
- Clique no branch temporário
- Clique em [Excluir]
Linha de comando:
git checkout <nº de commit>
Desfazer commits
Em casos de haver realizado um commit errado, é possível desfaze lo por “reset”.
No Visual Studio:
- Clique em [Git]
- Clique em [Exibir Histórico]
- Clique no branch desejado
- Clique em [Redefinir]
Então todos os commits posteriores serão excluídos
Linha de comando:
git reset <nº de commit>
5. Atualizar cópia local (Pull)
Pull é uma atualização do repositório local a partir do remoto. Deixa seu branch igual a versão equivalente dela em repositório remoto.
Fazer Pull no Visual Studio:
- Clique em [Git]
- Clique em [Realizar Pull]
Use o Pull antes de subir Antes de subir alterações para o repositório remoto, é importante deixar a branch local igual a sua equivalente remoto para cuidar de uma possível resolução de conflitos localmente.
- Pull de DEV
- Merge de FUNC em DEV
- Push de DEV
Linha de comando:
git pull
6. Enviar ao repositório (Push)
Atualiza o repositório remoto a partir da cópia local.
- Certifique se de que está no branch correto
- Clique na seta na barra inferior