Use o código e tenha 10% de desconto!

Controlando versões com Git e GitHub

Alexandre Aquiles, Rodrigo Ferreira

Conteúdo

Desenvolver software não é fácil. Há sempre demandas de novas funcionalidades a serem desenvolvidas e de alterações nas funcionalidades já existentes. Por isso, uma das preocupações nos projetos é manter um histórico de evolução do código fonte, facilitando o trabalho de desfazer algumas dessas alterações, caso seja necessário. Além disso, como geralmente trabalhamos em equipe, outra preocupação é sobre a integração do trabalho entre os membros da equipe. Diversos problemas relacionados com essas preocupações podem acontecer durante o desenvolvimento de um software, e, para evitá-los, é essencial a utilização de uma ferramenta de controle de versão.

O Git é uma dessas ferramentas de controle de versão. Foi criado em 2005 por Linus Torvalds, o criador do Linux, e hoje é uma das ferramentas de controle de versão mais utilizadas nos projetos de desenvolvimento de software, por ser mais rápido e eficiente do que as outras ferramentas tradicionais, como CVS e SVN.

Já o GitHub é um serviço web que nos permite hospedar repositórios de projetos que utilizam o Git, facilitando, assim, o trabalho em equipe e a colaboração com projetos open source.

Neste livro, Alexandre Aquiles e Rodrigo Ferreira mostrarão como utilizar o Git para controlar as versões do seu projeto. Serão ensinados comandos para criação de repositórios, trabalho local e remoto, branches, tags, conflitos, dentre outros assuntos. Além disso, será mostrado também como criar uma conta no GitHub e utilizá-la para hospedar seus repositórios.

 

Sumário

  • 1 Introdução
  • 1.1 Mantendo o histórico do código
  • 1.2 Trabalhando em equipe
  • 1.3 Sistemas de controle de versão
  • 1.4 Controle de versão rápido e confiável com Git
  • 1.5 Hospedando código no GitHub
  • 1.6 O processo de escrita desse livro
  • 2 Tour prático
  • 2.1 Instalando e configurando o Git
  • 2.2 Criando um arquivo texto para versionarmos
  • 2.3 Versionando seu código com Git
  • 2.4 Compartilhando seu código através do GitHub
  • 3 Trabalhando com repositório local
  • 3.1 Criando um repositório local
  • 3.2 Rastreando arquivos
  • 3.3 Gravando arquivos no repositório
  • 3.4 Verificando o histórico do seu repositório
  • 3.5 Verificando mudanças nos arquivos rastreados
  • 3.6 Removendo arquivos do repositório
  • 3.7 Renomeando e movendo arquivos
  • 3.8 Desfazendo mudanças
  • 4 Trabalhando com repositório remoto
  • 4.1 Repositório remoto
  • 4.2 Adicionando o repositório remoto
  • 4.3 Enviando commits para o repositório remoto
  • 4.4 Clonando o repositório remoto
  • 4.5 Sincronizando o repositório local
  • 4.6 Protocolos suportados pelo Git
  • 5 Hospedando o repositório no GitHub
  • 5.1 Serviços de hospedagem de projetos
  • 5.2 GitHub: a rede social dos desenvolvedores
  • 5.3 Encontrando projetos e visualizando o código-fonte
  • 5.4 Criando um usuário no GitHub
  • 5.5 Criando o repositório do projeto
  • 5.6 Enviando os commits do projeto para o GitHub
  • 5.7 Clonando o repositório hospedado no GitHub
  • 5.8 Colaborando com projetos open source
  • 6 Organizando o trabalho com branches
  • 6.1 A branch master
  • 6.2 Criando uma branch
  • 6.3 Trocando de branch
  • 6.4 Deletando uma branch
  • 6.5 Comitando código em uma nova branch
  • 6.6 Voltando para o master e fazendo uma alteração
  • 6.7 Mesclando alterações
  • 7 Trabalhando em equipe com branches remotas
  • 7.1 Branches remotas
  • 7.2 Compartilhando branches
  • 7.3 Obtendo novas branches remotas em outros repositórios
  • 7.4 Enviando commits para o repositório central
  • 7.5 Obtendo commits de uma branch remota
  • 7.6 Mesclando branches remotas e locais
  • 7.7 Deletando branches remotas
  • 8 Controlando versões do código com tags
  • 8.1 Criando, listando e deletando tags
  • 8.2 Mais informações com tags anotadas
  • 8.3 Compartilhando tags com a sua equipe
  • 9 Lidando com conflitos
  • 9.1 Mesclando mudanças em um mesmo arquivo sem conflitos
  • 9.2 Conflitos após um merge com mudanças em um mesmo arquivo
  • 9.3 Resolvendo conflitos após um rebase
  • 9.4 Usando uma ferramenta para resolver conflitos
  • 10 Maneiras de trabalhar com Git
  • 10.1 Utilizando só a branch master com um repositório central
  • 10.2 Utilizando branches por funcionalidade com um repositório central
  • 10.3 Utilizando branches por etapa de desenvolvimento com um repositório central
  • 10.4 Colaborando com projetos open source com Fork e Pull Request
  • 10.5 Organizando projetos open source gigantescos com Ditador e Tenentes
  • 11 Apêndice ─ GitHub no Windows
  • 11.1 Instalando o GitHub for Windows
  • 11.2 Criando um novo repositório
  • 11.3 Efetuando commits no repositório
  • 11.4 Detalhando os commits
  • 11.5 Enviando o repositório para o GitHub
  • 11.6 Trabalhando com branches

veja mais detalhes

Autores

Alexandre Aquiles

Alexandre Aquiles formou-se em Engenharia da Computação pela Unicamp e pós-graduou-se em Engenharia de Software Ágil pela UNA/BH. Desenvolve software profissionalmente desde 2005, tendo trabalhado nas áreas de logística, governo, mineração e seguros. Acredita que softwares devem ser desenvolvidos de forma iterativa e incremental, entregando continuamente software de valor e com qualidade.

Rodrigo Ferreira

Rodrigo Ferreira é Bacharel em Sistemas de Informação pela Universidade Católica de Brasília, trabalha com desenvolvimento de software desde 2008, tendo grande experiência em sistemas web utilizando a plataforma Java. Possui as certificações SCJP, SCWCD, OCEJPAD, OCEEJBD, OCEJWSD e CSM. Atualmente é desenvolvedor e instrutor na Caelum, onde ministra treinamentos de Java, Java EE, PHP, Front-end e Agile.

Dados do produto

Número de páginas:
220
ISBN:
978-85-66250-53-4

Compartilhe!

Compartilhe no Facebook Compartilhe no Twitter