image

Acesse bootcamps ilimitados e +650 cursos

50
%OFF

JS

João Souza12/03/2024 20:48
Compartilhe

Dominando o básico do GIT

  • #GitHub
  • #Git

Neste artigo teremos uma série de exemplos de execução de comandos básicos do git, bem como a recomendação de vídeos demonstrando de forma prática o que eles fazem.

Introdução ao o que é o git

O que é uma ferramenta de controle de versão?

O que é e como funciona o git.

Configurações iniciais do git

Ao instalar o git no seu computador, abra o git bash e execute os seguintes comandos, um por vez:

git config --global user.name = "Seu Nome"
git config --global user.email = "Seu Email"

Com isso toodas as vezes que você for trabalhar num projeto compartilhado será possível identificar que você fez algo, seja para te perguntar como aquele trecho de código funciona ou para te reportar um bug no que você fez.

Comandos básicos do git

git add

Se você viu os vídeos acima sabe como e git funciona. Usando o git add você move os arquivos para a área de preparo , onde os arquivos serão preparados para serem salvos. Com o comando abaixo você pode fazer isso:

git add .

git commit

Ao criar um commit você salva aquela versão do arquivo. Isso faz com que haja um ponto de restauração ali que poderá ser usado para retornar àquele ponto do código.

git commit -m "fix: erro de requisição consertado"

Acima temos um exemplo de commit. A tag -m é passada para que não seja necessário editar o texto no bloco de notas ou editor que você tiver. O préfixo fix indica que o commit se trata de uma correção no código. Há uma padronização de como devem ser feitos os commits.

os mais usados são:

  • fix para correções
  • feat para novas funcionalidades
  • refact para refatorações
  • revet para reversões de commits
  • docs para documentação

git log

Quando criamos um commit um hash , sequência de caracteres que vai ser o identificador do commit é gerado e ligado a ele. Se executarmos o comando abaixo veremos isso:

git log

Com isso vemos todos os commits realizados, sendo que na primeira linha temos o hash do commit, e abaixo quem o fez e o que foi feito (para sair do git log execute um ctrl+z). Isso é importante para vermos os autores de cada commit e também para podermos utilizar o hash do git para executar um git reset para reverter um commit.

A flag --oneline pode ser passada após o git log. As informações serão reduzidas aos primeiros caracteres do hash do commit com o título dele.

git reset

Caso você eventualmente erre um commit e queira voltar atrás commo se nada tivesse acontecido de errado, você poderá usar um git reset para isso. Isso serve tanto para quando você está num projeto local quanto caso você erre um git push ou git merge, enviando algo para onde não deveria. Para isso execute um git log, identifique para qual commit você deseja voltar, copie o hash do commit e execute:

git reset --hard hashDoCommit

Assim tudo o que foi feito após o commit escolhido para ser o ponto mais atual será perdido, e o commit escolhido será visto como o último a ser feito.

git diff

Caso ao trabalhar numa branch você decida que quer saber o que mudou do estado atual para o último commit use um:

git diff

Um detalhamento será exibido mostrando linhas adicionadas ou apagadas dos arquivos alterados, arquivos novos ou removidos. Oara verificar a diferença entre dois commits basta utilizar um git log, copiar o hash dos dois commits e usar um:

git diff hashDoPrimeiroCommit hashDoSegundoCommit

Para facilitar a visualização da diferença entre commits é interessante usar a flag --oneline no git log para que não haja muita informação na tela.

git branch

Quando vocês deseja fazer alterações num código mas não quer que um possível erro causado por elas se espalhe pelo software há um meio de fazer isso. Ao criar um branch você pode como que clonar todo o projeto para uma linha isolada, e assim você aplica as alterações nela, e se tudo ocorrer bem você une ela à linhagem que a deu origem.

Num projeto git por padrão você trabalhará numa branch chamada master . Esta é a branch de produção , ou seja, a branch que contém o software no estado que os usuários veem. Todas as vezes que um software atualiza, essa é a branch de atualização.

Os programadores criam uma branch que se origina na master, chamada develop , e essa é a branch que os desenvolvedores terão acesso. Quando a develop está com mudanças significativas e estáveis, ela é unida à master, para que os usuários tenham acesso à mudança.

Os nomes utilizados nas branches seguem um padrão, e são eles:

  • master (branch de produção)
  • develop (branch de desenvolvimento) que se origina na master
  • feature (branch de uma nova funcionalidade) que se origina na develop
  • bugfix (branch de correção de bugs) que se origina na develop
  • hotfix (branch de correção de bugs urgentes) que se origina na master

Para verificar em qual branch você está no momento basta usar um:

git branch

Caso queira criar uma nova branch, você deve, em primeiro lugar, ir para a branch que deve ser copiada. Por exemplo, sempre que eu quiser criar uma branch de feature nova, antes eu devo me mover para a develop, então poderei criar a branch. Com o comando abaixo você pode criar uma nova branch.

git branch nomeDaBranchQueVoceQuerCriar

Com o temmpo será necessário deletar branches . Para isso você deve sair dela e executar o comando abaixo:

  git branch -d nomeDaBranchQueVaiSerDeletada

Caso você queira deletar mais de uma ao mesmo tempo, poderá colocar vários nomes de branches após o -d, todos separados por espaço. Nunca delete a master ou a develop, elas existirão durante todo o projeot de forma permanente.

git checkout

Para trocar a branch em que você está você pode usar um:

git  checkout nomeDaBranchQueVoceQuerIr

Caso você queira criar uma nova branch e ir imediatamente para ela o comando abaixo faz isso:

git checkout -b nomeDaBranchQueVaiSerCriada

Se você não quiser usar o comando acima, poderá fazer da forma mais longa, usando o git branch e depois o git checkout.

git merge

Após criar uma branch, se deslocar para dentro dela e validar que todas as modificações feitas tiveram o efeito esperado é necessário unir ela à sua branch de origem. Por exemplo, a branch de feature se origina na develop, logo, após você concluir todas as alterações na sua branch, mova-se para a branch de origem (neste caso a develop) e execute o comando abaixo:

git merge nomeDaBranch

Assim, para unir a branch de feature à branch develop eu primeiro uso um gitt checkout develop, git merge branchDeFeature e depois um git branch -d branchDeFeature, pois após o merge as alterações da branchDeFeature foram mescladas com a branch develop, pois não há mais a necessidade da branchDeFeture continuar no projeto, então a deletamos.

Trabalhando de forma remota

Até agora vimos que o git tem várias funcionalidades, porém tudo ainda é local . Quando você relizar um git commit isso ainda é visível apenas para você. Quando se trabalha em equipes é necessário que todos tenham acesso à mesma versão do código. Por isso a plataforma git hub possui integração com o git, para que você possa armazenar seu proojeto lá, assim, as alterações que você faz ficarão disponíveis para outras pessoas.

Para isso crie uma conta no git hub, e então crie uma pasta nova, dando-a o mesmo nome do seu projeto. Um link ficará em evidência em sua tela , copie-o e verifique se ele é o da opção de http.

Ele serve para que você conecte seu projeto local à esta pasta remota . Assim numa equipe todos terão um ponto de acesso em comum, já que o projeto estará na nuvem. Para que vocÇe conecte seu projeto local à sua pasta remota basta executar o comando abaixo:

git remote add origin linkQueVoceCopiou

Origin é o nome da conexão padrãpo do git, mas você poderá criar as suas com outros nomes. Assim você poderá usar os comandos a seguir para sincronizar o seu projeto local com o que está na nuvem .

git push

Os commits que você realiza são locais, e caso uma outra pessoa deseje ter acesso a eles seus commits devem ser enviados para o git hub (ou outra plataforma que permita o mesmo). Para enviar seus commits para a nuvem você deve executar o git push. Quando você tem várias conexões no mesmo projeto você deverá indicar els no comando, mas se houver apenas uma e ela for a origin o git push irá usar ela sem a necessidade de indicá-la.

Se você estiver realizando um git push numa branch que existe apenas localmente mas não no git hub, o git irá te sugerir um comando que contem um set upstream . Basta copiar e colar ele, e quando você o executar ele irá enviar seus commits criando a branch . O comando é simples:

git push

git pull

O git push envia seus commits para o git hub, mas ainda é necessário que você possa obter também as alterações que as outras pessoas enviaram . Para isso navegue para a branch que você deseja receber as alterações e execute um git pull:

git pull

Nunca realize um git push antes de um git pull , principalmente se o git push for forçado, pois você poderá sobrescrever as alterações das outras pessoas naquela branch. Quando se trabalha com compessoas no mesmo projeto é importante realizar um git pull logo ao iniciar suas tarefas para garantir que você está trabalhando na versão mais atual do projeto.

Compartilhe
Recomendados para você
Microsoft 50 Anos - GitHub Copilot
Microsoft AI for Tech - GitHub Copilot
Microsoft 50 Anos - Prompts Inteligentes
Comentários (0)