SlideShare une entreprise Scribd logo
1  sur  32
Git e Gitorious
Agenda
☑Git
☑Gitorious
Git
“O sistema de controle de versão mais
inteligente do que você.” – Linus Torvalds
Há muito tempo atrás, numa galáxia
muito distante...
☑GIT foi criado em 2005 por Linus Torvalds para ser
o novo sistema de controle de versão do Kernel
Linux.
☑Pilares do projeto:
☑Ser rápido
☑Distribuído
☑“Ser o mais diferente possível do CVS, o que por si só
já é excelente.” – Linus Torvalds
GIT
☑ Open-Source
☑ Todo o código-fonte do GIT é open-source, ou seja, até a Microsoft pode
usar.
☑ Distribuído
☑ Não existe um repositório central obrigatório. Todo repositório GIT é um
repositório completo e funcional.
☑ Orientado a Branches
☑ O GIT incentiva o uso extensivo de branches para auxiliar no processo de
construção do projeto. Branches são leves e fáceis de serem “mergidas”
entre si.
☑ Garantia dos dados
☑ GIT usa SHA-1 para assinar o conteúdo dos arquivos de cada commit. Com
isso, há a possibilidade da integridade dos dados ser conferida pelos
membros da equipe.
Warm-Up
☑ Remote
☑ Um caminho para um repositório hospedado em outro computador.
☑ Commit
☑ Um Commit é uma modificação feita no conteúdo do projeto que é salva no
histórico.
☑ Branch
☑ Uma ramificação na linha de desenvolvimento do projeto.
☑ Cloning
☑ Copiar um repositório local ou remoto, juntamente com todo seu histórico.
☑ Tags
☑ Nome dado a alguma modificação ou release do projeto.
☑ Merging
☑ Ato de combinar dois branches em um só.
☑ Checkout
☑ Mudar de branch.
Usando Branches a seu favor
GIT
☑ Na branch Master, temos a versão estável do código.
☑ Na branch Develop, temos a versão do código que é usada para
desenvolvimento.
☑ Para cada modificação necessária ao código, criamos uma branch
Topic a partir de Develop e fazemos nela o trabalho necessário.
Após o trabalho ter sido concluído, fazemos um merge de Topic
com Develop.
☑ Após todas as modificações terem sido feitas e o código novo
estiver estável, fazemos um merge entre Develop e Master.
GIT
Branches são leves, não tenha medo de usá-las!Elas
auxiliam no controle e gerenciamento do projeto
e deixam o histórico mais organizado.
Comandos Principais
☑ Git init
☑ Git branch <nome da branch>
☑ Git checkout <nome da branch>
☑ Git clone <caminho do repositório>
☑ Git commit –m <mensagem do commit>
☑ Git remote
☑ Add <nome do remote> <caminho do repositorio remoto>
☑ Rm <nome do remote> <caminho do repositorio remoto>
☑ Git push <repositório remoto> <branch remoto>
☑ Git pull
☑ Git add <arquivos>
Outros Comandos
☑Git diff <nome do arquivo> <nome do arquivo>
☑Git config <options>
☑Git rebase <nome da branch> <nome da branch>
☑Git tag <nome da tag>
☑Git fetch
☑Git status
Agenda
☑Git on the server
☑Pra que tantos protocolos?
☑História
☑Pontos fortes
☑Projetos
☑Trabalhando com o
Gitorious
☑Tópicos especiais
Git on the Server
☑E se um colaborador estiver offline?
☑Possuir um repositório em comum para os
colaboradores é útil.
Servidor Git
Que também merece alguns protocolos de
comunicação.
Pra que tantos protocolos?
☑Protocolo local
☑SSH
☑Protocolo Git
☑Protocolo HTTP/S
What!?
Protocolo local
☑ Caso comum onde todos tem acesso a um repositório remoto via
algum diretório compartilhado(exemplo: NFS)
☑ $ git clone /opt/git/project.git
☑ $ git clone file:///opt/git/project.git
☑ Prós:
☑ Simplesmente simples ter e acessar diretório compartilhado!
☑ Contras:
☑ Confusões nas permissões de arquivos e montagem de disco remoto pé no
saco.
Secure Shell(SSH)
☑ Facilmente usado em servidores para leitura e escrita com
autenticação.
☑ $ git clone ssh://user@server:project.git
☑ $ git clone user@server:project.git
☑ Prós:
☑ Escrita autenticada, transferência de dados criptografados e autenticados, e
eficiente(dados compactados antes da transferência.
☑ Contras:
☑ Sem acesso anônimo, ruim para projetos open-Source.
Protocolo GIT
☑Fornece um serviço similar ao SSH, porém sem
autenticação.
☑A única segurança é o arquivo git-export-daemon-ok.
☑Git://host.com.br/projeto/repositorio.git
☑Prós:
☑O mais rápido entre os 4 protocolos.
☑Contras:
☑Qualquer um acessa.
HTTP/S
☑Um dos mais difundidos e é fácil de ser usado,
tanto para leitura(HTTP/HTTPS) quanto para
escrita(HTTPS).
☑git clone http://example.com/gitproject.git
☑Prós:
☑Protocolo muito usado e dificilmente barrado por
firewalls.
☑Contras:
☑Lento, sobrecarga de rede.
Gitorious servidor git web
☑Gitorious é uma estrutura web open source para
o gerenciamento de repositorios com foco no
gerenciamento de projetos.
O Git já não vem com algo assim?
Git web
☑O git possui por default um script chamado
GitWeb.
História do Gitorious
☑O desenvolvimento iniciado em 2007 por Johan
Sorensen com o objetivo de facilmente
armazenar seus próprios repositórios.
Com o tempo…
…ficou bem melhor que Git Web…
Pontos Fortes
☑Gestão de projetos por equipes.
☑Monitoramento de atividades.
☑Acompanhamento de projetos.
☑Linha de tempo.
☑Wikis dos projetos.
Projetos no gitorious
☑ Vários repositórios por projeto.
☑ Merge requests.
☑ Alocação de equipes:
☑ Pode se alocar equipes inteiras com um mesmo privilégio de
acesso.
E os protocolos como ficam?
☑O Gitorious cuida do gerenciamento destes pra
você.
☑Preocupe-se mais com outras características do
projeto.
Paginas wiki
☑Páginas de
descrição do
projeto que
acompanham
também com
gerenciamento
das mudanças.
Git merging
git merge <branch>
☑Resolvendo os conflitos.
☑ o novo commit é interrompido caso haja conflitos.
☑ git status (quando ver os unmerged edite os)
☑ git otimiza o melhor branch ancestral para realizar o
merge.
Git merging
☑git mergetool pode ser muito util para editar os
conflitos usando uma ferramenta de diff instalada
no seu pc.
Curiosidades
☑Você pode querer revisar certos commits porém
digitar aquele SHA-1 é meio chato...
☑ Git aceita abreviação, em vez de …
734713bc047d87bf7eac9674765ae793478c50d3
☑ Digite apenas:
734713…
☑Git show 734713
☑Pra mostrar versões pais de um commit:
☑ git HEAD^3(e ^ sozinho é o pai)
Dúvidas
Fale Conosco
Teltools Tecnologia
Av. Cesário Alvim, 3521
Bairro Brasil – CEP38400-696
Uberlândia – MG
(34) 3222-9571
http://www.teltools.com.br
falecom@teltools.com.br
Gerson Scanapieco
gerson@teltools.com.br
Samuel Henrique
samuel.henrique@teltools.com.br
Av. Cesário Alvim, 3521
Bairro Brasil – CEP38400-696
Uberlândia – MG
(34) 3222-9571
http://www.teltools.com.br
falecom@teltools.com.br

Contenu connexe

Tendances

Docker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoDocker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoSérgio Lima
 
Apresentacao gitbasico
Apresentacao gitbasicoApresentacao gitbasico
Apresentacao gitbasicoMCP TECNOLOGIA
 
Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoTobias Sette
 
Iniciando com git
Iniciando com gitIniciando com git
Iniciando com gittechparty
 
Verdades que não querem te contar sobre Docker
Verdades que não querem te contar sobre DockerVerdades que não querem te contar sobre Docker
Verdades que não querem te contar sobre DockerLuís Bianchin
 
DevOps e redes -- SDN NFV e Docker
DevOps e redes -- SDN NFV e DockerDevOps e redes -- SDN NFV e Docker
DevOps e redes -- SDN NFV e DockerLucas Arbiza
 
Microsoft e Linux: como e porque a Microsoft se aliou ao software livre
Microsoft e Linux: como e porque a Microsoft se aliou ao software livreMicrosoft e Linux: como e porque a Microsoft se aliou ao software livre
Microsoft e Linux: como e porque a Microsoft se aliou ao software livremarioaxavier7
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteComunidade NetPonto
 
TDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerTDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerStefan Teixeira
 
Microsoft e Linux: Como e Porquê a Microsoft se aliou ao Software Livre
Microsoft e Linux: Como e Porquê a Microsoft se aliou ao Software LivreMicrosoft e Linux: Como e Porquê a Microsoft se aliou ao Software Livre
Microsoft e Linux: Como e Porquê a Microsoft se aliou ao Software LivrePotiLivre Sobrenome
 
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
 
Primeiros passos com o Docker
Primeiros passos com o DockerPrimeiros passos com o Docker
Primeiros passos com o DockerWebSix
 
Orquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e ComposeOrquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e ComposeRoberto Hashioka
 

Tendances (20)

Docker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimentoDocker, facilitando a vida do desenvolvimento
Docker, facilitando a vida do desenvolvimento
 
Git
GitGit
Git
 
Apresentacao gitbasico
Apresentacao gitbasicoApresentacao gitbasico
Apresentacao gitbasico
 
Docker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de usoDocker: uma visão geral e exemplos de uso
Docker: uma visão geral e exemplos de uso
 
Iniciando com git
Iniciando com gitIniciando com git
Iniciando com git
 
Verdades que não querem te contar sobre Docker
Verdades que não querem te contar sobre DockerVerdades que não querem te contar sobre Docker
Verdades que não querem te contar sobre Docker
 
DevOps e redes -- SDN NFV e Docker
DevOps e redes -- SDN NFV e DockerDevOps e redes -- SDN NFV e Docker
DevOps e redes -- SDN NFV e Docker
 
Microsoft e Linux: como e porque a Microsoft se aliou ao software livre
Microsoft e Linux: como e porque a Microsoft se aliou ao software livreMicrosoft e Linux: como e porque a Microsoft se aliou ao software livre
Microsoft e Linux: como e porque a Microsoft se aliou ao software livre
 
Apres git geinfo2012
Apres git geinfo2012Apres git geinfo2012
Apres git geinfo2012
 
Docker: uma visão geral
Docker: uma visão geralDocker: uma visão geral
Docker: uma visão geral
 
Controlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto ProieteControlo de Versões Distribuído com Git - C. Augusto Proiete
Controlo de Versões Distribuído com Git - C. Augusto Proiete
 
TDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de DockerTDC 2015 POA - O Fantástico Mundo de Docker
TDC 2015 POA - O Fantástico Mundo de Docker
 
Linuxtips - a saideira
Linuxtips - a saideiraLinuxtips - a saideira
Linuxtips - a saideira
 
Microsoft e Linux: Como e Porquê a Microsoft se aliou ao Software Livre
Microsoft e Linux: Como e Porquê a Microsoft se aliou ao Software LivreMicrosoft e Linux: Como e Porquê a Microsoft se aliou ao Software Livre
Microsoft e Linux: Como e Porquê a Microsoft se aliou ao Software Livre
 
Apresentação docker
Apresentação dockerApresentação docker
Apresentação docker
 
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
 
Introdução ao docker
Introdução ao dockerIntrodução ao docker
Introdução ao docker
 
Primeiros passos com o Docker
Primeiros passos com o DockerPrimeiros passos com o Docker
Primeiros passos com o Docker
 
BlingTech - Gitlab
BlingTech - GitlabBlingTech - Gitlab
BlingTech - Gitlab
 
Orquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e ComposeOrquestrando Docker Containers: Machine, Swarm e Compose
Orquestrando Docker Containers: Machine, Swarm e Compose
 

Similaire à PDC - Engenharia - Git e Gitorious

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
 
Intervalo técnico Git/SVN
Intervalo técnico Git/SVNIntervalo técnico Git/SVN
Intervalo técnico Git/SVNLuciano Lima
 
workshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdfworkshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdfAuriceliaRosa
 
Workshop git para iniciantes
Workshop git para iniciantesWorkshop git para iniciantes
Workshop git para iniciantesPaula Santana
 
O Fantástico Mundo de Git
O Fantástico Mundo de GitO Fantástico Mundo de Git
O Fantástico Mundo de GitMatheus Fidelis
 
Fluxo de desenvolvimento de software utilizando Git
Fluxo de desenvolvimento de software utilizando GitFluxo de desenvolvimento de software utilizando Git
Fluxo de desenvolvimento de software utilizando GitBruno Ricardo Siqueira
 
Workshop sistema de versionamento de código - git
Workshop  sistema de versionamento de código - gitWorkshop  sistema de versionamento de código - git
Workshop sistema de versionamento de código - gitThiago Filadelfo
 
Controle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básicoControle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básicoFabricio Nogueira
 
Controle de versões distribuído para projetos de software
Controle de versões distribuído para projetos de softwareControle de versões distribuído para projetos de software
Controle de versões distribuído para projetos de softwareGilmar Pupo
 
Migração SVN para GIT
Migração SVN para GITMigração SVN para GIT
Migração SVN para GITDenis Santos
 
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
 

Similaire à PDC - Engenharia - Git e Gitorious (20)

GIT Básico
GIT BásicoGIT Básico
GIT Básico
 
Git & Delphi
Git & DelphiGit & Delphi
Git & Delphi
 
Curso git-0001
Curso git-0001Curso git-0001
Curso git-0001
 
Git ao GitHub
Git ao GitHubGit ao GitHub
Git ao GitHub
 
Git e github
Git e githubGit e github
Git e github
 
Ferramentas para versionamento Utilizando git
Ferramentas para versionamento Utilizando gitFerramentas para versionamento Utilizando git
Ferramentas para versionamento Utilizando git
 
Git
GitGit
Git
 
Git e GitHub
Git e GitHubGit e GitHub
Git e GitHub
 
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
 
Intervalo técnico Git/SVN
Intervalo técnico Git/SVNIntervalo técnico Git/SVN
Intervalo técnico Git/SVN
 
workshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdfworkshopgitparainiciantes1-190901224755.pdf
workshopgitparainiciantes1-190901224755.pdf
 
Workshop git para iniciantes
Workshop git para iniciantesWorkshop git para iniciantes
Workshop git para iniciantes
 
O Fantástico Mundo de Git
O Fantástico Mundo de GitO Fantástico Mundo de Git
O Fantástico Mundo de Git
 
Fluxo de desenvolvimento de software utilizando Git
Fluxo de desenvolvimento de software utilizando GitFluxo de desenvolvimento de software utilizando Git
Fluxo de desenvolvimento de software utilizando Git
 
Workshop sistema de versionamento de código - git
Workshop  sistema de versionamento de código - gitWorkshop  sistema de versionamento de código - git
Workshop sistema de versionamento de código - git
 
Controle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básicoControle de Versão Distribuído com Git básico
Controle de Versão Distribuído com Git básico
 
Controle de versões distribuído para projetos de software
Controle de versões distribuído para projetos de softwareControle de versões distribuído para projetos de software
Controle de versões distribuído para projetos de software
 
Introdução ao git e github
Introdução ao git e githubIntrodução ao git e github
Introdução ao git e github
 
Migração SVN para GIT
Migração SVN para GITMigração SVN para GIT
Migração SVN para GIT
 
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
 

Plus de slides_teltools

Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1slides_teltools
 
Software Factory - Overview
Software Factory - OverviewSoftware Factory - Overview
Software Factory - Overviewslides_teltools
 
PDC - Engenharia - Phonegap
PDC - Engenharia - PhonegapPDC - Engenharia - Phonegap
PDC - Engenharia - Phonegapslides_teltools
 
PDC - Engenharia - Ruby Talk
PDC - Engenharia - Ruby TalkPDC - Engenharia - Ruby Talk
PDC - Engenharia - Ruby Talkslides_teltools
 
PDC - Testes - Usando o Testlink
PDC - Testes - Usando o TestlinkPDC - Testes - Usando o Testlink
PDC - Testes - Usando o Testlinkslides_teltools
 
PDC - Usabilidade - Prototipação com Balsamiq
PDC - Usabilidade - Prototipação com BalsamiqPDC - Usabilidade - Prototipação com Balsamiq
PDC - Usabilidade - Prototipação com Balsamiqslides_teltools
 
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...slides_teltools
 
PDC - Engenharia - Plataformas Computação em Nuvem
PDC - Engenharia - Plataformas Computação em NuvemPDC - Engenharia - Plataformas Computação em Nuvem
PDC - Engenharia - Plataformas Computação em Nuvemslides_teltools
 
PDC - Engenharia - Plataforma Microsoft .NET
PDC - Engenharia - Plataforma Microsoft .NETPDC - Engenharia - Plataforma Microsoft .NET
PDC - Engenharia - Plataforma Microsoft .NETslides_teltools
 
Institucional - Apresentação
Institucional - ApresentaçãoInstitucional - Apresentação
Institucional - Apresentaçãoslides_teltools
 

Plus de slides_teltools (10)

Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1Teltools - Fábrica de Software - Resumida - V1
Teltools - Fábrica de Software - Resumida - V1
 
Software Factory - Overview
Software Factory - OverviewSoftware Factory - Overview
Software Factory - Overview
 
PDC - Engenharia - Phonegap
PDC - Engenharia - PhonegapPDC - Engenharia - Phonegap
PDC - Engenharia - Phonegap
 
PDC - Engenharia - Ruby Talk
PDC - Engenharia - Ruby TalkPDC - Engenharia - Ruby Talk
PDC - Engenharia - Ruby Talk
 
PDC - Testes - Usando o Testlink
PDC - Testes - Usando o TestlinkPDC - Testes - Usando o Testlink
PDC - Testes - Usando o Testlink
 
PDC - Usabilidade - Prototipação com Balsamiq
PDC - Usabilidade - Prototipação com BalsamiqPDC - Usabilidade - Prototipação com Balsamiq
PDC - Usabilidade - Prototipação com Balsamiq
 
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
PDC - Arquitetura - 001 - A vida, o universo e tudo mais ...
 
PDC - Engenharia - Plataformas Computação em Nuvem
PDC - Engenharia - Plataformas Computação em NuvemPDC - Engenharia - Plataformas Computação em Nuvem
PDC - Engenharia - Plataformas Computação em Nuvem
 
PDC - Engenharia - Plataforma Microsoft .NET
PDC - Engenharia - Plataforma Microsoft .NETPDC - Engenharia - Plataforma Microsoft .NET
PDC - Engenharia - Plataforma Microsoft .NET
 
Institucional - Apresentação
Institucional - ApresentaçãoInstitucional - Apresentação
Institucional - Apresentação
 

PDC - Engenharia - Git e Gitorious

  • 3. Git “O sistema de controle de versão mais inteligente do que você.” – Linus Torvalds
  • 4. Há muito tempo atrás, numa galáxia muito distante... ☑GIT foi criado em 2005 por Linus Torvalds para ser o novo sistema de controle de versão do Kernel Linux. ☑Pilares do projeto: ☑Ser rápido ☑Distribuído ☑“Ser o mais diferente possível do CVS, o que por si só já é excelente.” – Linus Torvalds
  • 5. GIT ☑ Open-Source ☑ Todo o código-fonte do GIT é open-source, ou seja, até a Microsoft pode usar. ☑ Distribuído ☑ Não existe um repositório central obrigatório. Todo repositório GIT é um repositório completo e funcional. ☑ Orientado a Branches ☑ O GIT incentiva o uso extensivo de branches para auxiliar no processo de construção do projeto. Branches são leves e fáceis de serem “mergidas” entre si. ☑ Garantia dos dados ☑ GIT usa SHA-1 para assinar o conteúdo dos arquivos de cada commit. Com isso, há a possibilidade da integridade dos dados ser conferida pelos membros da equipe.
  • 6. Warm-Up ☑ Remote ☑ Um caminho para um repositório hospedado em outro computador. ☑ Commit ☑ Um Commit é uma modificação feita no conteúdo do projeto que é salva no histórico. ☑ Branch ☑ Uma ramificação na linha de desenvolvimento do projeto. ☑ Cloning ☑ Copiar um repositório local ou remoto, juntamente com todo seu histórico. ☑ Tags ☑ Nome dado a alguma modificação ou release do projeto. ☑ Merging ☑ Ato de combinar dois branches em um só. ☑ Checkout ☑ Mudar de branch.
  • 7. Usando Branches a seu favor
  • 8. GIT ☑ Na branch Master, temos a versão estável do código. ☑ Na branch Develop, temos a versão do código que é usada para desenvolvimento. ☑ Para cada modificação necessária ao código, criamos uma branch Topic a partir de Develop e fazemos nela o trabalho necessário. Após o trabalho ter sido concluído, fazemos um merge de Topic com Develop. ☑ Após todas as modificações terem sido feitas e o código novo estiver estável, fazemos um merge entre Develop e Master.
  • 9. GIT Branches são leves, não tenha medo de usá-las!Elas auxiliam no controle e gerenciamento do projeto e deixam o histórico mais organizado.
  • 10. Comandos Principais ☑ Git init ☑ Git branch <nome da branch> ☑ Git checkout <nome da branch> ☑ Git clone <caminho do repositório> ☑ Git commit –m <mensagem do commit> ☑ Git remote ☑ Add <nome do remote> <caminho do repositorio remoto> ☑ Rm <nome do remote> <caminho do repositorio remoto> ☑ Git push <repositório remoto> <branch remoto> ☑ Git pull ☑ Git add <arquivos>
  • 11. Outros Comandos ☑Git diff <nome do arquivo> <nome do arquivo> ☑Git config <options> ☑Git rebase <nome da branch> <nome da branch> ☑Git tag <nome da tag> ☑Git fetch ☑Git status
  • 12. Agenda ☑Git on the server ☑Pra que tantos protocolos? ☑História ☑Pontos fortes ☑Projetos ☑Trabalhando com o Gitorious ☑Tópicos especiais
  • 13. Git on the Server ☑E se um colaborador estiver offline? ☑Possuir um repositório em comum para os colaboradores é útil. Servidor Git Que também merece alguns protocolos de comunicação.
  • 14. Pra que tantos protocolos? ☑Protocolo local ☑SSH ☑Protocolo Git ☑Protocolo HTTP/S What!?
  • 15. Protocolo local ☑ Caso comum onde todos tem acesso a um repositório remoto via algum diretório compartilhado(exemplo: NFS) ☑ $ git clone /opt/git/project.git ☑ $ git clone file:///opt/git/project.git ☑ Prós: ☑ Simplesmente simples ter e acessar diretório compartilhado! ☑ Contras: ☑ Confusões nas permissões de arquivos e montagem de disco remoto pé no saco.
  • 16. Secure Shell(SSH) ☑ Facilmente usado em servidores para leitura e escrita com autenticação. ☑ $ git clone ssh://user@server:project.git ☑ $ git clone user@server:project.git ☑ Prós: ☑ Escrita autenticada, transferência de dados criptografados e autenticados, e eficiente(dados compactados antes da transferência. ☑ Contras: ☑ Sem acesso anônimo, ruim para projetos open-Source.
  • 17. Protocolo GIT ☑Fornece um serviço similar ao SSH, porém sem autenticação. ☑A única segurança é o arquivo git-export-daemon-ok. ☑Git://host.com.br/projeto/repositorio.git ☑Prós: ☑O mais rápido entre os 4 protocolos. ☑Contras: ☑Qualquer um acessa.
  • 18. HTTP/S ☑Um dos mais difundidos e é fácil de ser usado, tanto para leitura(HTTP/HTTPS) quanto para escrita(HTTPS). ☑git clone http://example.com/gitproject.git ☑Prós: ☑Protocolo muito usado e dificilmente barrado por firewalls. ☑Contras: ☑Lento, sobrecarga de rede.
  • 19. Gitorious servidor git web ☑Gitorious é uma estrutura web open source para o gerenciamento de repositorios com foco no gerenciamento de projetos. O Git já não vem com algo assim?
  • 20. Git web ☑O git possui por default um script chamado GitWeb.
  • 21. História do Gitorious ☑O desenvolvimento iniciado em 2007 por Johan Sorensen com o objetivo de facilmente armazenar seus próprios repositórios. Com o tempo…
  • 22. …ficou bem melhor que Git Web…
  • 23. Pontos Fortes ☑Gestão de projetos por equipes. ☑Monitoramento de atividades. ☑Acompanhamento de projetos. ☑Linha de tempo. ☑Wikis dos projetos.
  • 24. Projetos no gitorious ☑ Vários repositórios por projeto. ☑ Merge requests. ☑ Alocação de equipes: ☑ Pode se alocar equipes inteiras com um mesmo privilégio de acesso.
  • 25. E os protocolos como ficam? ☑O Gitorious cuida do gerenciamento destes pra você. ☑Preocupe-se mais com outras características do projeto.
  • 26. Paginas wiki ☑Páginas de descrição do projeto que acompanham também com gerenciamento das mudanças.
  • 27. Git merging git merge <branch> ☑Resolvendo os conflitos. ☑ o novo commit é interrompido caso haja conflitos. ☑ git status (quando ver os unmerged edite os) ☑ git otimiza o melhor branch ancestral para realizar o merge.
  • 28. Git merging ☑git mergetool pode ser muito util para editar os conflitos usando uma ferramenta de diff instalada no seu pc.
  • 29. Curiosidades ☑Você pode querer revisar certos commits porém digitar aquele SHA-1 é meio chato... ☑ Git aceita abreviação, em vez de … 734713bc047d87bf7eac9674765ae793478c50d3 ☑ Digite apenas: 734713… ☑Git show 734713 ☑Pra mostrar versões pais de um commit: ☑ git HEAD^3(e ^ sozinho é o pai)
  • 31. Fale Conosco Teltools Tecnologia Av. Cesário Alvim, 3521 Bairro Brasil – CEP38400-696 Uberlândia – MG (34) 3222-9571 http://www.teltools.com.br falecom@teltools.com.br Gerson Scanapieco gerson@teltools.com.br Samuel Henrique samuel.henrique@teltools.com.br
  • 32. Av. Cesário Alvim, 3521 Bairro Brasil – CEP38400-696 Uberlândia – MG (34) 3222-9571 http://www.teltools.com.br falecom@teltools.com.br