em
git

Review: Controlando versões com Git e GitHub.

Esse é meu primeiro review pra um livro da editora Casa do Código. Vou fazer o review divido por capítulos e na conclusão do review vou responder as seguintes perguntas:

Pra quem eu recomendaria este livro?
Visão completa sobre o livro.

git-github-featured_large

Antes de partir para o review, quero agradecer a Casa do Código por disponibilizar o código PINCELADASDAWEB com 10% de desconto na compra de qualquer livro da editora. Caso tenham alguma dúvida de como utilizar o cupom de desconto, basta deixar um comentário. :-)

E se você está afim de ganhar um e-book da Casa do Código só fazer um comentário nesse post falando pra gente qual e-book você quer ganhar da editora. E esperar até amanhã (24/02/2016) às 16hs que vou divulgar os 2 ganhadores pelo, twitter, facebook e aqui no blog também.

Navegue abaixo pelos capítulos do livro:

Capítulo 1 – Introdução

É um capítulo que mostra os motivos de por que utilizar o Git. Por exemplo, poder voltar pro código de 3 meses atrás no projeto que você está trabalhando com sua equipe de forma transparente.

Os autores também falam dos controles de versão que vieram antes do Git, como: CVS, ClearCase, SourceSafe e SVN (tem empresas utilizando algum deles). Após comentar sobres esses sistemas de controle de versão os autores Alexandre Aquiles e Rodrigo Ferreira, focam um pouco na história do Git. Em seguida eles falam sobre o GitHub, que é uma hospedagem de código que utiliza o Git.

Pra finalizar o capítulo eles comentam que o Git não é utilizado apenas como controle de versão de código. Aliás, todos os livros da Casa do Código utilizam o Git e hospedam no GitHub todas as versões do livro enquanto os autores estão escrevendo seus livros.

Capítulo 2 – Tour Prático

Esse capítulo é bem interessante. Os autores resolveram mostrar na prática como é usar o sistema de controle de versão Git já postando o código no GitHub, sem explicar de forma aprofundada cada comando.
Eles vão pedindo pra você utilizar o Git e GitHub, só pra gente ver como quanto é divertido. :-)
Ah! Eles também mostram como faz pra instalar o Git no Windows, Linux e Mac.

Capítulo 3 – Trabalhando com repositório local

Bacana. Me parece que vamos ter o projeto do site da empresa Móveis Ecológicos pra desenvolver junto com o livro.

Nesse capítulo aprendemos a:

  • Iniciar um projeto com Git;
  • Verificar quais arquivos estão sendo rastreados pelo Git;
  • Colocar um arquivo ou vários pra ser rastreado pelo Git;
  • O que é a área de stage;
  • Falar pro Git ignorar arquivos que estão dentro da pasta do projeto mas não devem serem rastreados;
  • Guardar o código de um arquivo no nosso repositório local;
  • Ver quais são as mudanças dos arquivos que falamos pro Git rastrear;
  • Renomear, remover, mover ou desfazer um mudança em um determinado arquivo.

A cada ponto acima que vamos aprendendo os autores tomaram o cuidado de fazer um explicação escrita junto com uma visual. As explicações visuais deixam tudo mais simples de entender. A imagem abaixo, é a última explicação visual desse capítulo, que de certa forma resume todos os comandos que aprendemos e executamos durante o capítulo 3.


git_undo

Último exemplo visual do que vamos fazendo durante o capítulo 3.

Apesar de parecer confusa com todas essas setas, fica muito mais simples com as quatro imagens que antecedem essa imagem no livro.

Capítulo 4 – Trabalhando com repositório remoto

Utilizar um repositório remoto é bem interessante. Com ele podemos trabalhar em equipe de uma forma transparente, além de não ser mais necessário ficar fazendo backups diariamente do nosso código. Pra conseguir usar todos esses benefícios o Rodrigo e o Alexandre nos ensinam a: como criar um repositório remoto, adicionar um repositório remoto, renomear o repositório remoto que criamos, copiar um repositório remoto e deixar relacionado o nosso repositório local com o remoto.

No final do capítulo é falado sobre quais protocolos o Git tem suporte, sendo eles: local, SSH, Git e HTTP/HTTPS.

Esse capítulo é bem interessante mas ele não é tão prático. Pois nós utilizaremos o GitHub como repositório remoto, no desenvolvimento do projeto: Móveis Ecológicos.

Capítulo 5 – Hospedando o repositório no GitHub

Com o GitHub nos temos literalmente a vantagem de trabalhar da praia e de forma transparente com o nosso time. Além de ser uma rede social de desenvolvedores onde você pode também mostrar o seu trabalho.

No livro os autores comentam que a maioria dos projetos open source estão com seus códigos hospedados no GitHub, por exemplo:

  • jQuery
  • Ruby on Rails
  • Node.js
  • Django
  • Bootstrap

Também é apresentado como criar o seu usuário e o repositórios, como o do projeto Móveis Ecológicos no GitHub. Com o seu repositório criado no GitHub, eles ensinam como enviar todo o histórico local do código que estamos desenvolvendo junto com livro para o repositório que acabamos de criar no GitHub. Pronto! Agora você pode pegar a mala de viagem e ir trabalhar olhando pro pôr do sol em um praia em Floripa. :-)

Eles também mostram como um novo desenvolvedor pode copiar todo o histórico do projeto e o estados atual do GitHub pra máquina dele. Ou como você pode copiar um dos projetos open source citados acima pra sua máquina. Já que você está com um projeto open source na sua máquina, eles ensinam a forma de você colaborar com esse projeto.

Capítulo 6 – Organizando o trabalho com branches

Se vamos precisar executar uma tarefa que vai demorar um mês ou mais pra finalizar, por exemplo refazer todo o layout o projeto da apostila. Durante esse mês trabalhando no novo design o cliente vai pedindo pequenas funcionalidades ou correções de bugs. Como continuar com duas versões do código, uma com o novo design e a outra com o antigo que vamos utilizar pra adicionar as pequenas funcionalidades e bugs?

Os autores explicam nesse capítulo a vantagem de utilizar branch pra resolver esse problema. A parte bacana é que eles mostram os exemplos que podemos acompanhar com o desenvolvimento do projeto Móveis Ecológicos. No andamento do projeto desse capítulo aprendemos a criar uma branch, deletar um branch, mudar da branch do novo design pra branch do design antigo, fazer um commit na branch sem impactar a outra e por fim como mesclar as duas branches.

Como nos capítulos anteriores os autores tomaram o cuidado de fazer as explicações dos comandos de forma escrita e por imagem.

git_rebase_master

Capítulo 7 – Trabalhando em equipe com branches remotas

No começo desse capítulo os autores lembram das vantagens de trabalhar com um repositório remoto.

Agora que já sabemos como trabalhar com as branches precisamos ver como compartilhar as branches que temos local com nosso time, pra isso precisamos mantar a branch local pro GitHub. É exatamente isso que os autores nos ensinam a fazer, além de conseguir pegar, deletar e enviar commits entre a branch local e remota.

Capítulo 8 – Controlando versão do código com tags

Eu não conhecia as tags e gostei bastante da ideia. Basicamente as tags são utilizadas pra marcarem um ponto específico do nosso código tornando mais fácil voltar pro estado do código que marcamos. Pra fazer isso nos aprendemos a criar tags com informações extra ou sem informações extras, deletar e compartilhar as tags.

Capítulo 9 – Lidando com conflitos

Esse é o capítulo que separar os adultos das crianças. Aqui você precisa ter pegado bem os capítulos anteriores ou já ter caso longo com o Git.

Felizmente o Alexandre e o Rodrigo tomam um bom cuidado na explicação de como mesclar arquivos com ou sem conflitos. Quando tem conflitos chatos ou mais complicados de analisar, eles mostram como usar um ferramenta com o comando: git mergetool

Capítulo 10 – Maneiras de trabalhar com o Git

Agora que temos um bom conhecimento do Git. É apresentado algumas das maneiras que os times trabalham utilizando o Git:

  • Só a branch master com um repositório central;
  • Branches por funcionalidade com um repositório central;
  • Branches por etapa de desenvolvimento com um repositório central;
  • Como colaborando com projetos open source com Fork e Pull Request;
  • Como organizar projetos open source gigantescos com Ditador e Tenentes.

Capítulo 11 – Apêndice ─ GitHub no Windows

Esse capítulo vou ficar devendo uma descrição prática porque eu uso Mac. I am sorry. :-(
Mas como todos os outros as explicações são bem práticas e com bastante imagens

Conclusão

Pra quem eu recomendaria este livro?

Qualquer desenvolvedor que tenha um conhecimento básico do que é HTML e CSS já consegue ler o livro, e é um conteúdo que vale tanto pra um desenvolvedor Frontend ou Backend. Também é bem útil pra quem está afim de escrever um livro pra Casa do Código

Visão completa sobre o livro?

Livro com um projeto bem simples mas é o que dá a vontade de escrever os códigos e ir utilizando o Git e GitHub conforme vamos lendo. Acredito que esse é o ponto alto do livro. Outra coisa boa é que o livro apesar de ser de código tem boas imagens pra simplificar as explicações.

Pra mim faltou um índice remissivo com as listas de comandos. Com objetivo de facilitar um busca depois que já aprendi o conceito e só quero usar o livro pra uma consulta rápida.

Comentários

  1. Quero o livro css eficiente

    por Matheus Justo —
  2. Eu tenho interesse pelo livro da casa do código > Aplicações mobile híbridas com Cordova e PhoneGap .

    Abraços e ótimo Review que tu fez! ;)

    por Cristofer Sousa
  3. Muito bom o review :)
    Gostaria de ganhar o ebook “Guia Front-End”.

    por Clara Battesini —
  4. Quero o e-book Python 3

    por Jonathan
  5. quero ganhar o “Mean
    Full stack JavaScript para aplicações web com MongoDB, Express, Angular e Node”

    por cassio
  6. Ótimo review!

    Gostaria de ganhar o e-book Python 3 – Escreva seus primeiros programas.

    por Gessé Rocha —
  7. Ebook de Jenkins

    por Marcus Silva —
  8. Show o resumo, me interessei mais pelo livro agora… Sobre o sorteio, quero ganhar o “Mean
    Full stack JavaScript para aplicações web com MongoDB, Express, Angular e Node”

    por Alexandre Neto —
  9. Olá parabéns pelo review e gostaria de ganhar o livro Rails 4 da casa do código.

    por Jean Cesar —
  10. Primeiro review que vejo sobre um livro da casa do Código. Adorei o review, parabéns.
    Gostaria de ganhar o livro: Direto ao Ponto – Criando produtos de forma enxuta

    por Samuel —
  11. Ótimo review. Me interesso em ganhar o livro: A lógica do jogo – Recriando clássicos da história dos videogames.

    por Ricardo —
  12. Ótima matéria e review.
    Para o sorteio gostaria de ganhar o livro “= Guia front-End, o caminho das pedras para ser um Dev Front End”

    por Marco Antônio —
  13. Parabéns pelo conteúdo.

    Gostaria de ganhar o livro: SEO Prático: Seu site na primeira página de buscas

    por Douglas Ramalho —
  14. O review ficou tão legal que fiquei com vontade de ler o Livro de Git e GitHub.

    por Leandro Matos —
  15. Eu escolheria esse livro aí de Git e Github

    por Eduardo Soares
  16. Muito o review. Se rolar gostaria de ganhar o livro “Aplicações mobile híbridas com Cordova e PhoneGap”.

    por Felipe Arruda —
  17. Bem legal rapaz! Git é essencial hoje.

    O livro que gostaria de ganhar é “Introdução e boas práticas em UX Design”.

    por Lidia —
  18. Como comecei a aprender há duas semanas sobre git e github, gostaria de ganhar o e-book “Controlando versões com git e github”.
    O review ficou muito bom, bastante esclarecedor.

    por João Paulo Nogueira —
  19. Gostaria de ganhar o livro Controlando versões com Git e GitHub. Comecei a usar o Git e GitHub a poucos dias, o livro iria me auxiliar muito! E jugando pelo review o livro é excelente!

    por Tharles Amaro —
  20. Gostaria de ganhar o livro “Controlando versões com Git e GitHub”

    por Denise Vitoriano —
  21. Quero ganhar o livro “Controlando versões com Git e GitHub”. Andei vendo alguns vídeos na internet sobre essas ferramentas e quero aprofundar os estudos sobre as mesmas. Ahh..review excelente! :)

    por Aucilania Queiroz —
  22. Os ganhadores são:
    Gessé Rocha — 23 de fevereiro de 2016 @ 18:33 Responder

    Lidia — 24 de fevereiro de 2016 @ 10:59 Responder

    Amanhã até às 14hs eu mando pra vocês o e-book que vocês pediram no email que vocês colocaram na hora que escreveram o comentário.

    Muito obrigado a todos por participar da promoção. :-)

    Daqui 15 dias vou fazer o review de mais um livro com mais promoções :-)

    por Marco Bruno —

Comments are closed.