image

Bootcamps ilimitados + curso de inglês para sempre

80
%OFF
Article image
Hacjesse Ferreira
Hacjesse Ferreira06/10/2023 15:29
Compartilhe
Randstad - Análise de DadosRecomendados para vocêRandstad - Análise de Dados

Git e GitHub

  • #GitHub
  • #Git

Git e GitHub

O que é git?

O git é um sistema de controle de versão.

Quando estamos criando um software mais complexo, é de suma importância termos controle daquilo que estamos fazendo. O git ele age salvando versões dos mesmos arquivos que estamos trabalhando para termos um melhor controle e minimizar erros.

Principalmente quando há mais de uma pessoa que está editando o mesmo código que você. Pode haver conflitos. Tendo isso em mente o git proporciona um melhor controle e gerenciamento para esse e outros tipos de situações.

Como baixar o Git?

  • git-scm.com
  • fazer o download do arquivo
  • Instalar o arquivo com as configurações padrões

Como configurar o Git?

O que é GitHub?

O GitHub é uma plataforma de hospedagem de código para controle de versão com Git, e colaboração.

O GitHub vai atuar como sendo o servidor responsável por guardar os códigos que criamos.

Sendo assim, quando mais de uma pessoa vai editar o mesmo código, as alterações feitas por cada um serão salvas primeiro localmente e depois disso irá salvá-las remotamente (no GitHub). E assim a mágica da colaboração do trabalho em equipe em um mesmo projeto ocorre.

Como fazer a autenticação via Token

Se um projeto no GitHub for privado, será necessário fazer a autenticação para poder utilizar os comandos do git como gitclone.

  • Na parte superior direita da página do github você vai clicar no seu perfil e em seguida nas configurações.
  • Em seguida na parte inferior esquerda procure a opção developer settings → personal access tokens → tokens (classic).
  • Em generate new token clique na opção generate new token (classic)

Automaticamente será redirecionado para uma página para que você possa selecionar algumas opções de permissão para depois gerar o token.

Adicione uma nota (para que serve) o tempo desse token e as opções (geralmente escolha a primeira opção apenas) → generate new token

  • Copie o token (depois de sair da página esse código sumirá)
  • git config —global credencial .helper store

Quando você for tentar fazer algum comando que precise de autenticação cole o token lá e pronto, depois disso você não precisará mais ficar gerando tokens.

Como fazer a autenticação via SSH

SSH é um protocolo de rede que permite que seu computador local e servidor remoto (GitHub) se conectem de forma criptografada pela internet. Na própria página do GitHub tem o passo a passo.

Generating a new SSH key and adding it to the ssh-agent - GitHub Docs

Primeiros Passos com Git e GitHub

Criando e Clonado Repositórios

💡 Para criar uma pasta pelo terminal, use o comando → mkdir nome_da_pasta

Existem duas maneiras de obter um repostório Git na sua máquina:

  1. Transformando um diretório local em um repositório Git;
  • Crie a pasta que será transformada em um repositório Git.
  • Abra o gitBash e digite o comando → $ git init
  1. Clonando um repositório Git ja existente.
  • Copie o endereço do repositório desejado.
  • Abra o gitBash e digite o comando →$ git clone endereço_do_reposotório.git

Obs: Quando criado ou copiado, dentro da pasta do repositório git terá uma pasta .git (oculta) sinalizando que é um repositório git.

Salvando alterações no Repositório Local

git status

O comando "git status" é como pedir para o Git te contar o que está acontecendo no seu projeto. Quando você digita "git status" no seu terminal, o Git mostra quais arquivos foram modificados, quais estão prontos para serem "commitados" (salvos permanentemente no histórico), e se há algum arquivo novo que o Git ainda não conhece. É como dar uma espiadinha para saber o que está rolando no seu projeto antes de tomar decisões sobre o que fazer a seguir.

  • Comando: git status
  • Função:Mostra o estado atual do seu repositório Git.
  • Apresenta informações sobre os arquivos e modificações no projeto.
  • O que ele mostra:Arquivos modificados.
  • Arquivos prontos para serem "commitados" (salvos permanentemente no histórico).
  • Novos arquivos que o Git ainda não conhece.

💡 No terminal digite o comando “touch nome_do_arquivo.exemplo” para criar um arquivo vazio.

git add

Para salvar as alterações permanentemente, primeiros vamos usar o comando $ git add nome_do_arquivo.exemplo

  • Comando: $ git add
  • Função:Prepara os arquivos para serem incluídos no próximo "commit" (salvo permanentemente no histórico).
  • Indica ao Git quais alterações você deseja incluir no próximo "commit".
  • O que ele faz:Adiciona as modificações dos arquivos ao chamado "staging area" (área de preparação).
  • Permite selecionar quais modificações ou arquivos serão incluídos no próximo "commit".

git commit

O comando "git commit" no Git é como tirar uma foto do estado atual do seu projeto. Imagina que você está trabalhando em algo e quer registrar esse exato momento, como um marco importante. Você organiza as mudanças que quer incluir nessa foto usando o comando "git add". Depois, com o "git commit", você tira essa "foto" e a salva permanentemente no histórico do seu projeto. E para lembrar o que era essa foto, você coloca um pequeno título, uma mensagem, que descreve o que você fez nesse momento. Isso ajuda a manter um histórico claro e organizado do progresso do seu projeto.

  • Comando: git commit
  • Função:Salva permanentemente as mudanças preparadas na "staging area" (área de preparação) no histórico do repositório.
  • Cria um novo ponto no histórico que representa uma versão estável do projeto.
  • O que ele faz:Registra as mudanças que estão na "staging area" como uma nova versão (commit) no repositório Git.

Exemplo:

Suponha que você tenha feito modificações em dois arquivos: arquivo1.txt e arquivo2.txt. Você quer salvar essas modificações em um novo ponto no histórico. Aqui está o processo:

  1. Primeiro, use o comando git add para adicionar as modificações ao "staging area":
  2. $ git add arquivo1.txt
  3. $ git add arquivo2.txt
  4. Em seguida, use o comando git commit para salvar essas mudanças no histórico:
  5. $ git commit -m "Adicionando modificações nos arquivos 1 e 2”

Isso criará um novo commit no histórico contendo as modificações feitas nos arquivos arquivo1.txt e arquivo2.txt, e a mensagem "Adicionando modificações nos arquivos 1 e 2" será associada a esse commit para descrever o que foi feito.

git log

O comando "git log" mostra um histórico de todas as "fotos" (commits) que você tirou no seu projeto. É como olhar para um álbum de fotos, onde cada foto representa um ponto no tempo em que você tirou uma "foto" do seu projeto com o "git commit". Você pode ver quem tirou a "foto" (autor do commit), quando foi tirada (data e hora), e a mensagem que acompanha essa "foto" (descrição do que foi feito naquele ponto). Isso ajuda a entender o progresso do projeto e as mudanças ao longo do tempo.

  • Comando: $ git log
  • Função:Exibe um histórico de todos os commits feitos no repositório.
  • Apresenta informações sobre o autor, data, hora e mensagem de cada commit.
  • O que ele mostra:Lista os commits em ordem cronológica, do mais recente para o mais antigo.
  • Para cada commit, mostra o autor, a data e hora em que foi feito e a mensagem associada ao commit.

Desfazendo Alterações no Repositório Local

Desfazendo um repositório git

Para desfazer um repositório git vamos utilizar o seguinte comando

  • $ rm -rf .git
  • Esse comando vai desfazer o repositório git a força, tornando-o uma pasta normal.

Descartando alterações em um arquivo de um repositório git

Para descartar a ultima alteração feita, vamos utilizar o seguinte comando

  • $ git restore nome_do_arquivo.exemplo
  • Esse comando desfaz alterações nos arquivos e os restaura para o estado de um commit anterior.

Como Alterar a Mensagem do Último Commit

Para alterar a mensagem do último commit vamos usar o seguinte comando

  • $ git commit —amend -m”mensagem alterada”
  • Se vizualizarmos a mensagem antes e depois do comando acima com o comando $ git log vamos ver que o texto do commit foi alterado.

Como Desfazer Um Commit

  • Comando: git reset
  • Função:Remove commits do histórico (quando usado com opções específicas).

Opções comuns:

  • -soft: Mantém as mudanças dos commits a serem desfeitos no "staging area" (área de preparação).
  • -mixed: Remove os commits, mas mantém as mudanças não preparadas nos arquivos.
  • -hard: Remove os commits e as mudanças nos arquivos, revertendo completamente para o estado do commit especificado.

Exemplo de uso:

  • $ git reset --soft codigo_hash_do_commit_a_ser_resetado
  • O código hash pode ser encontrado usando o comando $ git log

💡 O "git reflog" é uma ferramenta valiosa para rastrear e recuperar informações mesmo após operações que possam parecer perdidas, como resets. Ele fornece um registro detalhado das ações recentes, o que é útil para resolver problemas e recuperar referências importantes.

Enviando e Baixando Alterações com o Repositório Remoto

Enviando

Primeiro de tudo vamos salvar todos os arquivos locais em um commit. E em seguida vamos crirar um repositório remoto na conta do GitHub. Feito isso com o git bash aberto vamos utilizar os seguintes comandos.

  • git remote add origin url_do_repositorio
  • esse comando vai conectar o nosso repositório local com o repositório online do GitHub.
  • git push -u origin main ou git push
  • O comando git push -u origin main é usado para enviar as alterações locais para um repositório remoto no GitHub.
  • git push: envia as alterações locais para o repositório remoto.
  • u: define o upstream (ponto de referência) para a branch local. Isso permite que você use apenas git push em vez de especificar o repositório e a branch toda vez.
  • origin: é o nome do repositório remoto.
  • main: é o nome da branch (ramo) local que será enviada para a branch principal do repositório remoto.

Baixando

Se houver alguma alteração no repositório remoto e quisermos atualizar essas alterações no repostório local (com o comando -u ja configurado anteriormente “ver no tópico anterior”) vamos apenas usar o comando $ git pull

  • Esse comando vai “puxar” as alterações do repositório remoto e mesclar com o que já existe no repositório local.

Essas anotações foram feitas por mim com base no meu entendimento assistindo o curso de versionamento de código com git e github aqui na DIO.

Compartilhe
Recomendados para você
Microsoft 50 Anos - GitHub Copilot
Microsoft AI for Tech - GitHub Copilot
GFT Start #7 .NET
Comentários (1)

RR

Rafael Rissatto - 06/10/2023 15:45

Mastigado, agora é descer a lenha no Git

Recomendados para vocêRandstad - Análise de Dados