Git Hub
Introdução e conceitos
Profª Aline Brito
O que é o Git
Hub?
GitHub é uma plataforma de
hospedagem de código para
controle de versão e
colaboração.
Permite o trabalho de equipe em
projetos de códigos.
Vantagens do
controle de
versão
Guardar o histórico de alterações no código fonte;
Marcar pontos importantes do projeto, como
release de versões;
Criar ramificações (branches) do código a fim de
desenvolver/testar um novo algoritmo;
Facilitar e/ou permitir o trabalho em paralelo em
uma equipe;
Retornar o código num estado anteriormente salvo,
etc.
Fluxo de Alterações
Add
Working
Directory Commit
Index
(Stage) Push
Head
Primeiros
passos
Criar uma
conta
Acessar o site GitHub e realize o
cadastro
Instalação
(Interface de linha de
commando)
• Para utilizer a versão de
linha de comando acessar
Git - Downloads (git-
scm.com)
Configuração Inicial(Git
Bash)
• Iniciar o Git Bash
• Digitar:
• git config --global
user.name
“nome_usuario"
• git config --global
user.email “email“
• Onde:
• Nome_usuário: seu
nome de usuário
como cadastrado no
Github
• Email: o email
utilizado no
cadastro do GitHub
Estrutura
Repository:
• Usado para organizar um único projeto. Os
repositórios podem conter pastas e arquivos,
imagens, vídeos, planilhas e conjuntos de
dados – qualquer coisa que o projeto
necessite;
Branch:
• É a maneira de trabalhar em diferentes versões
de um repositório ao mesmo tempo.
• Por padrão, seu repositório tem um
ramo(branch) chamado master que é
considerado o branch definitivo. Usamos
branchs para experimentar e fazer edições
antes de enviálos ao branch master.
Novo Repository
Para os exemplos utilizaremos um Projeto do zero, para isso foi criada a pasta Anatocoes e
inserido um único arquivo de texto chamado Teste.txt
Um novo repository do Git Hub sempre deve ser associado a uma pasta local e pode ser:
um projeto existente que passará a
ter controle de versão
Um novo Projeto criado a partir do
zero
No site do
GitHub
Selecionar a opção NEW ao
lado de Repositories
No site do Git Hub
• Repository Name: nome do
repositório
• Description: breve descrição do
conteúdo que será armazenado
• README: incluir um arquivo README,
onde podem ser inseridas
informações/orientações relevantes
sobre o projeto
• Git Ignore : arquivos que serão
ignorados pelo controle de versão, ao
selecionar a linguagem de
programação são adicionados a lista os
arquivos ignoraveis para aquela
linguagem (como arquivos gerados
pela compilação)
• License: se o Projeto estiver sendo
desenvolvido com algum tipo de
lecenciamento é necessário informar
qual.
Tela Inicial do Repositório
• Ao clicar na opção Clone Or
Download é possível:
• Efetuar o download de uma
cópia de um Projeto
existente
• Abrir diretamente no Visual
Studio
• Abrir uma pasta local do
Projeto
• Copiar a URL necessária
para continuar a
configuração do repositório
Principais
configurações do
repositório (site)
• Acessar a Opção Settings
Manage
Access
• Permite alterar a privacidade do Projeto
• Em Invite Collaborator é possível adicionar outros usuários que podem
colaborar com a codificação do Projeto ( membros de uma mesma
equipe por exemplo)
Iniciar o prompt de
comando
• Selecione a Opção Git Bash Here
Git Bash
O git Bash será iniciado no
diretório escolhido, sem a
necessidade de executar o
comando CD (change
directory )
Iniciar o repositório
• Executar o comando para
inicializar o repositório:
• git init
• Após digitar o comando
pressione ENTER
• Se executado com
sucesso será exibida a
mensagem de
confirmação
Configurações de acesso ao
repositório
Na tele inicial do repositório no
navegador, Clicar no botão Clone
Or download para ter acesso às
configurações
Configurar o repositório
• Executar os seguintes comandos:
• git remote add origin
https://github.com/username/no
me_repositorio
• configura o repositorio
associando ao servidor (
endereço copiado do git
hub)
• Username: seu nome
de usuário
• Nome_repositorio:
Nome do repositório
Criado
• git pull --allow-unrelated-histories
https://github.com/username/new
_repo
• recupera os arquivos do
servidor e mescla com os
arquivos locais que já
existirem nos diretórios
Mesclar
o projeto
• Executar o commando:
• git pull --allow-unrelated-histories
https://github.com/alinefbrito/hellojav
a.git
• O commando busca as alterações do
servidor e efetua a mesclagem (merge) com
o Projeto local
• Até esse ponto temos dois projetos
diferentes, um local e um no Git Hub
• O Parametro --allow-unrelated-histories
significa que dois projetos não relacionados
serão mesclados, e permite torná-los um
único projeto
Confirmar a mesclagem
• Após o commando será
iniciado um modo de edição
de texto para confirmar o
merge quando existirem
arquivos na pasta local
• Uma mensagem ( em
amarelo) será gerada. É
possível adicionar novas
informações
• Linhas iniciadas com # são
comentários e serão ignoradas
• Para sair do modo editor:
• Pressione a Tecla ESC
• Digite :wq!
• Pressione a Tecla ENTER
Git Pull
Busca modificações do servidor e
mescla a versão local com as
alterações remotas
Sintaxe mais usadas:
• git pull
• Efetua a busca e mescla as alterações
• git pull --verbose
• Além de buscar e mesclar exibe a
descrição do conteúdo e das operações
Git Add
Dentre outras funções, esse comando
adiciona um arquivo em uma lista de
arquivos a ser monitorado.
Também funciona para salvar o estado de
um arquivo que está sendo monitorado
(stage);
Sintaxe mais usadas:
•git add .
•Adiciona todos os arquivos disponíveis
•git add <nome do arquivo>
•Adiciona um arquivo especifico
•$ git add –A
•Adiciona à stage os arquivos deletados
Git Commit Cria um ponto de referência com o
estado atual de todos os arquivos;
Também funciona para salvar o estado
de um arquivo que está sendo
monitorado (stage);
Sintaxe mais usadas:
• git commit –a
• Efetua o commit de todas as alterações de
arquivos monitorados ( adicionados pelo add)
• git commit -m "comentários das alterações"
• o arquivo é enviado para o HEAD, mas ainda
não para o repositório remoto.
• git commit -am "commit message“
• Combina as duas opções anteriores
• git commit –amend
• Modifica o último commit realizado
Git status
Exibe o status dos arquivos (não
monitorados, modificados e não
salvos, salvos e prontos para
commit, etc);
Sintaxe mais usada:
• git status
• Exibe o status de commits pendentes
Git Push Envia as modificações
para o servidor.
Sintaxes mais usadas:
• git push origin master
• Envia os commits da
head à branch master
do servidor.
• Master pode ser
substituído por
qualquer branch
Git Rm
Remove um arquivo da lista de
arquivos a serem monitorados
Sintaxe mais usada:
• git rm -f nome_arquivo
• O parâmetro –f força a remoção de
um arquivo previamente
adicionado
Resultado
O diretório local e o servidor passam a ter o mesmo conteúdo
Outros Comandos
Git Checkout
Sobrescreve as alterações locais
Substitui as alterações na sua árvore de trabalho
com o conteúdo mais recente no HEAD.
Alterações já adicionadas ao index, bem como
novos arquivos serão mantidos.
Sintaxes mais usadas:
• git checkout master
• Alterna a branch de trabalho
• git checkout -- <arquivo>
• Remove as alterações de um arquivo especifico, O hífen
duplo indica ser um arquivo e não uma branch
Git Branch
Cria ou muda de ramo de desenvolvimento.
Também serve para listar todos os ramos existentes;
É comum no repositório branches novas para o
desenvolvimento de funcionalidades que ainda estão em
andamento
Sintaxe mais usadas:
•git branch <nome da branch>
•Cria uma nova branch. Costuma-se dar o nome da funcionalidade/recurso
em desenvolvimento à branch
•git checkout -b <nome da branch>
•Cria e selecionar uma branch
Git Merge
Permite fazer a junção de uma
branch em outra de maneira
automática
Para executar é necessário
selecionar a branch que receberá as
alterações por meio do checkout e
executar:
• git merge <nome da branch>
• Onde nome da Branch é aquela que
contem as alterações a serem enviadas
Conclusões
Considerações
finais
Além do Git há diversos outros sistemas de
controle de versão, sendo em cenários do
mundo real é necessário ver qual mais se
adequa ao cenário
Há sistemas que englobam além do
gerenciamento de controle de versão o
gerenciamento de tarefas do Projeto, como
o Bitbucket
Foram abordados apenas os comandos
básicos do Git, os demais commando
podem ser estudados através dos links
disponibilizados em Referências
Referências
• GitHub.com - GitHub Docs
• Git - Reference (git-scm.com)
• Git Tutorials and Training | Atlassian Git Tutorial
• git - guia prático - sem complicação!
(rogerdudler.github.io)
• Git How To: Tutorial Guiado de Git
• Azure Repos Git Documentation | Microsoft
Docs
• Git — Que raios é isso?!. Hello galerinha, a qt
tempo né?! | by Paloma Ribeiro | Dec, 2020 |
Medium

GitHub_versao2024-githubGitHub_versao2024-github

  • 1.
    Git Hub Introdução econceitos Profª Aline Brito
  • 2.
    O que éo Git Hub? GitHub é uma plataforma de hospedagem de código para controle de versão e colaboração. Permite o trabalho de equipe em projetos de códigos.
  • 3.
    Vantagens do controle de versão Guardaro histórico de alterações no código fonte; Marcar pontos importantes do projeto, como release de versões; Criar ramificações (branches) do código a fim de desenvolver/testar um novo algoritmo; Facilitar e/ou permitir o trabalho em paralelo em uma equipe; Retornar o código num estado anteriormente salvo, etc.
  • 4.
    Fluxo de Alterações Add Working DirectoryCommit Index (Stage) Push Head
  • 5.
  • 6.
    Criar uma conta Acessar osite GitHub e realize o cadastro
  • 7.
    Instalação (Interface de linhade commando) • Para utilizer a versão de linha de comando acessar Git - Downloads (git- scm.com)
  • 8.
    Configuração Inicial(Git Bash) • Iniciaro Git Bash • Digitar: • git config --global user.name “nome_usuario" • git config --global user.email “email“ • Onde: • Nome_usuário: seu nome de usuário como cadastrado no Github • Email: o email utilizado no cadastro do GitHub
  • 9.
    Estrutura Repository: • Usado paraorganizar um único projeto. Os repositórios podem conter pastas e arquivos, imagens, vídeos, planilhas e conjuntos de dados – qualquer coisa que o projeto necessite; Branch: • É a maneira de trabalhar em diferentes versões de um repositório ao mesmo tempo. • Por padrão, seu repositório tem um ramo(branch) chamado master que é considerado o branch definitivo. Usamos branchs para experimentar e fazer edições antes de enviálos ao branch master.
  • 10.
    Novo Repository Para osexemplos utilizaremos um Projeto do zero, para isso foi criada a pasta Anatocoes e inserido um único arquivo de texto chamado Teste.txt Um novo repository do Git Hub sempre deve ser associado a uma pasta local e pode ser: um projeto existente que passará a ter controle de versão Um novo Projeto criado a partir do zero
  • 11.
    No site do GitHub Selecionara opção NEW ao lado de Repositories
  • 12.
    No site doGit Hub • Repository Name: nome do repositório • Description: breve descrição do conteúdo que será armazenado • README: incluir um arquivo README, onde podem ser inseridas informações/orientações relevantes sobre o projeto • Git Ignore : arquivos que serão ignorados pelo controle de versão, ao selecionar a linguagem de programação são adicionados a lista os arquivos ignoraveis para aquela linguagem (como arquivos gerados pela compilação) • License: se o Projeto estiver sendo desenvolvido com algum tipo de lecenciamento é necessário informar qual.
  • 13.
    Tela Inicial doRepositório • Ao clicar na opção Clone Or Download é possível: • Efetuar o download de uma cópia de um Projeto existente • Abrir diretamente no Visual Studio • Abrir uma pasta local do Projeto • Copiar a URL necessária para continuar a configuração do repositório
  • 14.
  • 15.
    Manage Access • Permite alterara privacidade do Projeto • Em Invite Collaborator é possível adicionar outros usuários que podem colaborar com a codificação do Projeto ( membros de uma mesma equipe por exemplo)
  • 16.
    Iniciar o promptde comando • Selecione a Opção Git Bash Here
  • 17.
    Git Bash O gitBash será iniciado no diretório escolhido, sem a necessidade de executar o comando CD (change directory )
  • 18.
    Iniciar o repositório •Executar o comando para inicializar o repositório: • git init • Após digitar o comando pressione ENTER • Se executado com sucesso será exibida a mensagem de confirmação
  • 19.
    Configurações de acessoao repositório Na tele inicial do repositório no navegador, Clicar no botão Clone Or download para ter acesso às configurações
  • 20.
    Configurar o repositório •Executar os seguintes comandos: • git remote add origin https://github.com/username/no me_repositorio • configura o repositorio associando ao servidor ( endereço copiado do git hub) • Username: seu nome de usuário • Nome_repositorio: Nome do repositório Criado • git pull --allow-unrelated-histories https://github.com/username/new _repo • recupera os arquivos do servidor e mescla com os arquivos locais que já existirem nos diretórios
  • 21.
    Mesclar o projeto • Executaro commando: • git pull --allow-unrelated-histories https://github.com/alinefbrito/hellojav a.git • O commando busca as alterações do servidor e efetua a mesclagem (merge) com o Projeto local • Até esse ponto temos dois projetos diferentes, um local e um no Git Hub • O Parametro --allow-unrelated-histories significa que dois projetos não relacionados serão mesclados, e permite torná-los um único projeto
  • 22.
    Confirmar a mesclagem •Após o commando será iniciado um modo de edição de texto para confirmar o merge quando existirem arquivos na pasta local • Uma mensagem ( em amarelo) será gerada. É possível adicionar novas informações • Linhas iniciadas com # são comentários e serão ignoradas • Para sair do modo editor: • Pressione a Tecla ESC • Digite :wq! • Pressione a Tecla ENTER
  • 23.
    Git Pull Busca modificaçõesdo servidor e mescla a versão local com as alterações remotas Sintaxe mais usadas: • git pull • Efetua a busca e mescla as alterações • git pull --verbose • Além de buscar e mesclar exibe a descrição do conteúdo e das operações
  • 24.
    Git Add Dentre outrasfunções, esse comando adiciona um arquivo em uma lista de arquivos a ser monitorado. Também funciona para salvar o estado de um arquivo que está sendo monitorado (stage); Sintaxe mais usadas: •git add . •Adiciona todos os arquivos disponíveis •git add <nome do arquivo> •Adiciona um arquivo especifico •$ git add –A •Adiciona à stage os arquivos deletados
  • 25.
    Git Commit Criaum ponto de referência com o estado atual de todos os arquivos; Também funciona para salvar o estado de um arquivo que está sendo monitorado (stage); Sintaxe mais usadas: • git commit –a • Efetua o commit de todas as alterações de arquivos monitorados ( adicionados pelo add) • git commit -m "comentários das alterações" • o arquivo é enviado para o HEAD, mas ainda não para o repositório remoto. • git commit -am "commit message“ • Combina as duas opções anteriores • git commit –amend • Modifica o último commit realizado
  • 26.
    Git status Exibe ostatus dos arquivos (não monitorados, modificados e não salvos, salvos e prontos para commit, etc); Sintaxe mais usada: • git status • Exibe o status de commits pendentes
  • 27.
    Git Push Enviaas modificações para o servidor. Sintaxes mais usadas: • git push origin master • Envia os commits da head à branch master do servidor. • Master pode ser substituído por qualquer branch
  • 28.
    Git Rm Remove umarquivo da lista de arquivos a serem monitorados Sintaxe mais usada: • git rm -f nome_arquivo • O parâmetro –f força a remoção de um arquivo previamente adicionado
  • 29.
    Resultado O diretório locale o servidor passam a ter o mesmo conteúdo
  • 30.
  • 31.
    Git Checkout Sobrescreve asalterações locais Substitui as alterações na sua árvore de trabalho com o conteúdo mais recente no HEAD. Alterações já adicionadas ao index, bem como novos arquivos serão mantidos. Sintaxes mais usadas: • git checkout master • Alterna a branch de trabalho • git checkout -- <arquivo> • Remove as alterações de um arquivo especifico, O hífen duplo indica ser um arquivo e não uma branch
  • 32.
    Git Branch Cria oumuda de ramo de desenvolvimento. Também serve para listar todos os ramos existentes; É comum no repositório branches novas para o desenvolvimento de funcionalidades que ainda estão em andamento Sintaxe mais usadas: •git branch <nome da branch> •Cria uma nova branch. Costuma-se dar o nome da funcionalidade/recurso em desenvolvimento à branch •git checkout -b <nome da branch> •Cria e selecionar uma branch
  • 33.
    Git Merge Permite fazera junção de uma branch em outra de maneira automática Para executar é necessário selecionar a branch que receberá as alterações por meio do checkout e executar: • git merge <nome da branch> • Onde nome da Branch é aquela que contem as alterações a serem enviadas
  • 34.
  • 35.
    Considerações finais Além do Githá diversos outros sistemas de controle de versão, sendo em cenários do mundo real é necessário ver qual mais se adequa ao cenário Há sistemas que englobam além do gerenciamento de controle de versão o gerenciamento de tarefas do Projeto, como o Bitbucket Foram abordados apenas os comandos básicos do Git, os demais commando podem ser estudados através dos links disponibilizados em Referências
  • 36.
    Referências • GitHub.com -GitHub Docs • Git - Reference (git-scm.com) • Git Tutorials and Training | Atlassian Git Tutorial • git - guia prático - sem complicação! (rogerdudler.github.io) • Git How To: Tutorial Guiado de Git • Azure Repos Git Documentation | Microsoft Docs • Git — Que raios é isso?!. Hello galerinha, a qt tempo né?! | by Paloma Ribeiro | Dec, 2020 | Medium