SlideShare uma empresa Scribd logo
1 de 36
CARLOS Eduardo
- Desenvolvedor na Iterative
- Graduado em Analise e Desenvolvimento de Sistemas
- Cursando MBA Eng. de Software (FIAP)
- Microsoft Certified Professional
/Edusolution /Cadums Cadums01@@Cadums01
• O que é GIT (Visão Geral)
• Comparação com outrosVersionadores de Código
• Instalação e Configuração
• Ciclo Básico
• Comandos
• Como Ignorar Arquivos
• ComoTrabalhar comVárias Branches
• Resolução de Merges e Conflitos
• Repositórios Remotos (GitHub,Vsts)
Agenda
O que é GIT?
Sistema de controle de
versão distribuído (DVCS)
open source
Projeto criado por linusTorvalds quando teve que optar por uma alternativa do bitkeeper,
Que era o vcs que a comunidade do kernel do Linux utilizava desde 2002 e teve sua licença
Alterada, deixando de fornecer acesso gratuito.
• Não se basear no CVS
• Ser distribuído como o BitKeeper
• Proteger contra corrompimento de arquivos
• Ser rápido, muito rápido, com alta performance.
Premissas
Wikipedia:
Um sistema de controle de versão (ou versionamento), VCS (do inglês
version control system) ou ainda SCM (do inglês source code management)
na função prática da Ciência da Computação e da Engenharia de Software,
é um software com a finalidade de gerenciar diferentes versões no
desenvolvimento de um documento qualquer.
• Controle do Histórico
• Ramificação do projeto
• Trabalho em Equipe
• Marcação e resgate de versões estáveis
• GIT
• TFS
• CVS
• Mercurial (Usado para gerenciar o código fonte do python)
• Bazaar
• Subversion (svn)
• RTC (IBM)
Quais respostas para as seguintes questões, levando em
consideração a não utilização de umVCS e deixando o código em
algum diretório local ou na rede:
• Quem alterou o código?
• Que código foi alterado?
• Quando foi alterado?
• Pouca autonomia
Ações necessitam de acesso ao servidor.
• Risco de perda de dados
tudo em um único repositório
svn
git
• Todo diretório de trabalho é um repositório completo
• Contém todo histórico de alterações
• Principais operações são locais
• Sem dependência de um servidor
• Somente operações de “sincronização” necessitam acesso a
outros repositórios
<3
https://git-scm.com/download/gui/linux
GitKraken smartgit
https://git-scm.com/downloads
chocolatey Apt-get homebrew
• Configurando nome e e-mail
git config --global user.name
“Meu Nome”
• Configurando cores
git config --global color.ui
true
• Configurando atalhos
git config --global alias.st
status
escopos de configurações
• --Global (Configuração a nível de usuário)
• --system (configuração a nível de sistema)
• --Local (configuração a nível de repositório)
• Configurando editor
git config --global core.editor
“diretório do editor”
• Não monitorado (untracked)
• Modificado (modified)
• Preparado (staged)
• Consolidado (commited)
Repositório de desenvolvedor
• Usado para se trabalhar no projeto
• Com arquivos do projeto
• Dados do Git no diretório .git na raiz do projeto
Repositório de servidor (bare)
• Usado para compartilhar o projeto
• Sem arquivos do projeto
• Dados do Git diretamente na raiz do projeto
Criação de repositório:
• git init [--bare] DIRETÓRIO
• Git init
• Git add
• Git commit
• Git log
• Git status
• Git show
• Git rm
Comentário
# Isto é um comentário
Ignorar arquivos específicos
.FILE1.TXT
#Usando curingas
*~
*.swp
Ignorar todos os diretórios e arquivos em um diretório
Tmp/**/*
Branches são ramos de desenvolvimento onde podemos alterar nosso código de modo que fiquem
separados um dos outros, para mais tarde podemos fundir seu conteúdo com outra branch.
Processo que unifica o
trabalho realizado em duas branches.
• Git branch
• Git checkout
• Git diff
• Git show
• Git blame
• git reset
git commit –m “blah blah !”
// Begin
function f(x) {
return 7;
}
// End
function f(x) {
return 2 * x;
}
// Begin
function f(x) {
<<<<<<< HEAD
return 7;
=======
return 2 * x;
>>>>>>> other-branch
}
// End
function f(x) {
}
main.js
Merge
• Git remote
• Git clone
• Git fetch
• Git push
• Git pull
https://git-scm.com/book/pt-br/v1 (Documentação)
https://progit.org/ (Livro Free)
/Edusolution /Cadums Cadums01@@Cadums01
/Edusolution /Cadums Cadums01@@Cadums01

Mais conteúdo relacionado

Mais procurados (20)

Primeiros passos - GIT
Primeiros passos - GITPrimeiros passos - GIT
Primeiros passos - GIT
 
Sistemas de Controle de Versão
Sistemas de Controle de VersãoSistemas de Controle de Versão
Sistemas de Controle de Versão
 
Git+github
Git+githubGit+github
Git+github
 
Apresentacao docker
Apresentacao dockerApresentacao docker
Apresentacao docker
 
Versionamento com git
Versionamento com gitVersionamento com git
Versionamento com git
 
Git e github
Git e githubGit e github
Git e github
 
GIT Básico
GIT BásicoGIT Básico
GIT Básico
 
Git para quem vem do SVN
Git para quem vem do SVNGit para quem vem do SVN
Git para quem vem do SVN
 
Aprendendo Git
Aprendendo GitAprendendo Git
Aprendendo Git
 
Apresentação Docker
Apresentação DockerApresentação Docker
Apresentação Docker
 
Git + git hub
Git + git hubGit + git hub
Git + git hub
 
Aula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - WebschoolAula 2 - Curso Git e Github - Webschool
Aula 2 - Curso Git e Github - Webschool
 
Git
GitGit
Git
 
Workshop git para iniciantes
Workshop git para iniciantesWorkshop git para iniciantes
Workshop git para iniciantes
 
Introdução ao Git - Semac 2016
Introdução ao Git - Semac 2016Introdução ao Git - Semac 2016
Introdução ao Git - Semac 2016
 
Introducao ao Git
Introducao ao GitIntroducao ao Git
Introducao ao Git
 
Git
GitGit
Git
 
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
Ferramentas e bibliotecas que você deveria estar utilizando - Desenvolvimento...
 
Use o git e perca o medo de errar
Use o git e perca o medo de errarUse o git e perca o medo de errar
Use o git e perca o medo de errar
 
Curso git-0001
Curso git-0001Curso git-0001
Curso git-0001
 

Semelhante a Começando com GIT

Sistemas de controle de versão
Sistemas de controle de versãoSistemas de controle de versão
Sistemas de controle de versãoocfelipe
 
workshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdfworkshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdfAuriceliaRosa
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitC. Augusto Proiete
 
Versionamento de código em UiPath: Um guia prático.pdf
Versionamento de código em UiPath: Um guia prático.pdfVersionamento de código em UiPath: Um guia prático.pdf
Versionamento de código em UiPath: Um guia prático.pdfBrunaCavalcanti29
 
Git - Sistema Descentralizado de Controle de Versões
Git - Sistema Descentralizado de Controle de VersõesGit - Sistema Descentralizado de Controle de Versões
Git - Sistema Descentralizado de Controle de VersõesLeandro Cavalcante
 
Gerência de configuração ágil
Gerência de configuração ágilGerência de configuração ágil
Gerência de configuração ágilClaudia Melo
 
Introdução ao git
Introdução ao gitIntrodução ao git
Introdução ao gitDiogo Gomes
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourcetdc-globalcode
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubGilson Junior
 
Minicurso GIT 2022 - SENAC
Minicurso GIT 2022 - SENACMinicurso GIT 2022 - SENAC
Minicurso GIT 2022 - SENACDanilo Pinotti
 
Controle de Versões com Git + Github
Controle de Versões com Git + GithubControle de Versões com Git + Github
Controle de Versões com Git + GithubDavi Matos
 
Git- O minimo que você deve saber para trabalhar com ele.pptx
Git- O minimo que você deve saber para trabalhar com ele.pptxGit- O minimo que você deve saber para trabalhar com ele.pptx
Git- O minimo que você deve saber para trabalhar com ele.pptxLuiz Fernando
 
Introdução ao Git - fs2w - GrupySP
Introdução ao Git - fs2w - GrupySPIntrodução ao Git - fs2w - GrupySP
Introdução ao Git - fs2w - GrupySPSamuel Sampaio
 
Intervalo técnico Git/SVN
Intervalo técnico Git/SVNIntervalo técnico Git/SVN
Intervalo técnico Git/SVNLuciano Lima
 
Treinamento - Iniciando no Git e Github by Leandro Alves
Treinamento  - Iniciando no Git e Github by Leandro AlvesTreinamento  - Iniciando no Git e Github by Leandro Alves
Treinamento - Iniciando no Git e Github by Leandro AlvesLeandro Alves
 

Semelhante a Começando com GIT (20)

Sistemas de controle de versão
Sistemas de controle de versãoSistemas de controle de versão
Sistemas de controle de versão
 
workshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdfworkshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdf
 
Controlo de Versões Distribuído com Git
Controlo de Versões Distribuído com GitControlo de Versões Distribuído com Git
Controlo de Versões Distribuído com Git
 
Versionamento de código em UiPath: Um guia prático.pdf
Versionamento de código em UiPath: Um guia prático.pdfVersionamento de código em UiPath: Um guia prático.pdf
Versionamento de código em UiPath: Um guia prático.pdf
 
Git - Sistema Descentralizado de Controle de Versões
Git - Sistema Descentralizado de Controle de VersõesGit - Sistema Descentralizado de Controle de Versões
Git - Sistema Descentralizado de Controle de Versões
 
Git
GitGit
Git
 
Gerência de configuração ágil
Gerência de configuração ágilGerência de configuração ágil
Gerência de configuração ágil
 
Introdução ao git
Introdução ao gitIntrodução ao git
Introdução ao git
 
Open4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSourceOpen4Education | MC122 - Introdução a ALM OpenSource
Open4Education | MC122 - Introdução a ALM OpenSource
 
Workshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHubWorkshop de Introdução ao Git GitHub
Workshop de Introdução ao Git GitHub
 
Minicurso GIT 2022 - SENAC
Minicurso GIT 2022 - SENACMinicurso GIT 2022 - SENAC
Minicurso GIT 2022 - SENAC
 
Git ao GitHub
Git ao GitHubGit ao GitHub
Git ao GitHub
 
Git & GitHub for beginners
Git & GitHub for beginnersGit & GitHub for beginners
Git & GitHub for beginners
 
Controle de Versões com Git + Github
Controle de Versões com Git + GithubControle de Versões com Git + Github
Controle de Versões com Git + Github
 
Git- O minimo que você deve saber para trabalhar com ele.pptx
Git- O minimo que você deve saber para trabalhar com ele.pptxGit- O minimo que você deve saber para trabalhar com ele.pptx
Git- O minimo que você deve saber para trabalhar com ele.pptx
 
Git e Github
Git e GithubGit e Github
Git e Github
 
Introdução ao Git - fs2w - GrupySP
Introdução ao Git - fs2w - GrupySPIntrodução ao Git - fs2w - GrupySP
Introdução ao Git - fs2w - GrupySP
 
Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
 
Intervalo técnico Git/SVN
Intervalo técnico Git/SVNIntervalo técnico Git/SVN
Intervalo técnico Git/SVN
 
Treinamento - Iniciando no Git e Github by Leandro Alves
Treinamento  - Iniciando no Git e Github by Leandro AlvesTreinamento  - Iniciando no Git e Github by Leandro Alves
Treinamento - Iniciando no Git e Github by Leandro Alves
 

Começando com GIT

  • 1.
  • 2. CARLOS Eduardo - Desenvolvedor na Iterative - Graduado em Analise e Desenvolvimento de Sistemas - Cursando MBA Eng. de Software (FIAP) - Microsoft Certified Professional /Edusolution /Cadums Cadums01@@Cadums01
  • 3. • O que é GIT (Visão Geral) • Comparação com outrosVersionadores de Código • Instalação e Configuração • Ciclo Básico • Comandos • Como Ignorar Arquivos • ComoTrabalhar comVárias Branches • Resolução de Merges e Conflitos • Repositórios Remotos (GitHub,Vsts) Agenda
  • 4. O que é GIT?
  • 5. Sistema de controle de versão distribuído (DVCS) open source
  • 6. Projeto criado por linusTorvalds quando teve que optar por uma alternativa do bitkeeper, Que era o vcs que a comunidade do kernel do Linux utilizava desde 2002 e teve sua licença Alterada, deixando de fornecer acesso gratuito. • Não se basear no CVS • Ser distribuído como o BitKeeper • Proteger contra corrompimento de arquivos • Ser rápido, muito rápido, com alta performance. Premissas
  • 7. Wikipedia: Um sistema de controle de versão (ou versionamento), VCS (do inglês version control system) ou ainda SCM (do inglês source code management) na função prática da Ciência da Computação e da Engenharia de Software, é um software com a finalidade de gerenciar diferentes versões no desenvolvimento de um documento qualquer.
  • 8. • Controle do Histórico • Ramificação do projeto • Trabalho em Equipe • Marcação e resgate de versões estáveis
  • 9. • GIT • TFS • CVS • Mercurial (Usado para gerenciar o código fonte do python) • Bazaar • Subversion (svn) • RTC (IBM)
  • 10.
  • 11. Quais respostas para as seguintes questões, levando em consideração a não utilização de umVCS e deixando o código em algum diretório local ou na rede: • Quem alterou o código? • Que código foi alterado? • Quando foi alterado?
  • 12.
  • 13. • Pouca autonomia Ações necessitam de acesso ao servidor. • Risco de perda de dados tudo em um único repositório svn
  • 14. git • Todo diretório de trabalho é um repositório completo • Contém todo histórico de alterações • Principais operações são locais • Sem dependência de um servidor • Somente operações de “sincronização” necessitam acesso a outros repositórios
  • 15. <3
  • 16.
  • 17.
  • 20. • Configurando nome e e-mail git config --global user.name “Meu Nome” • Configurando cores git config --global color.ui true • Configurando atalhos git config --global alias.st status escopos de configurações • --Global (Configuração a nível de usuário) • --system (configuração a nível de sistema) • --Local (configuração a nível de repositório) • Configurando editor git config --global core.editor “diretório do editor”
  • 21.
  • 22. • Não monitorado (untracked) • Modificado (modified) • Preparado (staged) • Consolidado (commited)
  • 23. Repositório de desenvolvedor • Usado para se trabalhar no projeto • Com arquivos do projeto • Dados do Git no diretório .git na raiz do projeto Repositório de servidor (bare) • Usado para compartilhar o projeto • Sem arquivos do projeto • Dados do Git diretamente na raiz do projeto Criação de repositório: • git init [--bare] DIRETÓRIO
  • 24. • Git init • Git add • Git commit • Git log • Git status • Git show • Git rm
  • 25. Comentário # Isto é um comentário Ignorar arquivos específicos .FILE1.TXT #Usando curingas *~ *.swp Ignorar todos os diretórios e arquivos em um diretório Tmp/**/*
  • 26. Branches são ramos de desenvolvimento onde podemos alterar nosso código de modo que fiquem separados um dos outros, para mais tarde podemos fundir seu conteúdo com outra branch.
  • 27. Processo que unifica o trabalho realizado em duas branches.
  • 28. • Git branch • Git checkout • Git diff • Git show • Git blame • git reset
  • 29. git commit –m “blah blah !”
  • 30. // Begin function f(x) { return 7; } // End function f(x) { return 2 * x; } // Begin function f(x) { <<<<<<< HEAD return 7; ======= return 2 * x; >>>>>>> other-branch } // End function f(x) { } main.js Merge
  • 31.
  • 32. • Git remote • Git clone • Git fetch • Git push • Git pull
  • 33.