Por que usa o Git?

Por que usa o Git?

Diante do apresentado, minha conclusão pessoal sobre ferramentas de versionamentos. Se tiver que usar o modelo centralizado, vá de SVN. Caso não seja obrigado, recomendo fortemente o uso do GIT, como opção, por diversos aspectos:

Aspectos funcionais:

  1. Em quase tudo é executado mais rápido, em alguns casos muito mais rápido por ser otimizado para funcionar pela internet.
  2. O repositório ocupa menos espaço.
  3. É muito mais fácil administrar diversas fontes de atualizações.
  4. É fácil trabalhar com cópias locais para fazer experimentos e desenvolvimentos paralelos. Branches são baratos e simples. São incentivados.
  5. Incentiva o commit frequente.
  6. Facilita muito fazer merge.
  7. Permite trabalhar confortavelmente sem perder nenhuma funcionalidade e informação sem estar conectado ao servidor central (que pode e frequentemente é usado). Ele tem mais metadados locais.
  8. Possui mais informações de auditoria e que permitem mais facilidades em toda a administração.
  9. Manipula conversão de fim de linha mais facilmente.
  10. As revisões são assinadas digitalmente.
  11. Possui uma staging area que permite selecionar partes que deseja enviar para um repositório.
  12. Permite uma gama maior de fluxos de trabalho.

Aspectos não funcionais:

  1. Padrão de mercado
  2. Permite que você use poderosos serviços de hosting como o Github (https://github.com/) e o Bitbucket (https://bitbucket.org/) gratuitamente (cada um tem suas limitações e termos para a gratuidade) e baixo custo (repositórios particulares custam abaixo de 10 dólares mês). Isso tudo com backup, sob responsabilidade dessas empresas!
  3. Muitos projetos opensource usam o git, e são hospedados no github, isso facilita a imersão.
  4. O Google Code, um dos maiores repositórios de projetos open source migraram para o GIT, hospedando seus projetos no GitHub.
  5. Grandes empresas estão usando, como Oracle, Apple, Microsoft:
  6. https://github.com/oracle
  7. https://github.com/apple
  8. https://github.com/Microsoft
  9. https://github.com/twitter
  10. https://github.com/Netflix
  11. https://github.com/facebook
  12. https://github.com/Instagram
  13. Grandes projetos são gerenciados através dessa ferramenta:
  14. https://github.com/torvalds/linux
  15. https://github.com/twbs/bootstrap
  16. https://github.com/jquery/jquery
  17. https://github.com/rails/rails
  18. https://github.com/spring-projects

Materiais auxiliares para aprender a usar o GIT:

Tutoriais sobre como iniciar com o GIT:

  1. https://try.github.io/levels/1/challenges/1
  2. https://www.atlassian.com/git/tutorials
  3. https://www.codecademy.com/learn/learn-git
  4. https://www.youtube.com/watch?v=HVsySz-h9r4

Material mais abrangente com mais recursos:

  1. https://git-scm.com/book/en/v2
  2. https://www.tutorialspoint.com/git/
  3. https://git-scm.com/docs/gittutorial
  4. http://www.vogella.com/tutorials/Git/article.html

Clientes visuais para o GIT (para quem não quer ficar na linha de comando)

  1. https://www.gitkraken.com/ (Linux, Windows e Mac)
  2. https://www.sourcetreeapp.com/ (Windows e Mac)
  3. https://www.syntevo.com/smartgit/ (Linux, Windows e Mac)

Fontes:

  1. https://blog.pronus.io/posts/o-que-eh-gerencia-de-configuracao-de-software/
  2. https://www.atlassian.com/git/tutorials/what-is-version-control
  3. http://guides.beanstalkapp.com/version-control/intro-to-version-control.html
  4. http://pt.stackoverflow.com/questions/8315/diferen%C3%A7as-entre-git-svn-e-cvs
  5. http://www.tecmint.com/best-gui-git-clients-git-repository-viewers-for-linux/
  6. https://pt.wikiversity.org/wiki/CVS_x_SVN_x_Git
  7. https://biz30.timedoctor.com/git-mecurial-and-cvs-comparison-of-svn-software/
  8. https://blog.pronus.io/posts/vantagens-e-desvantagens-do-controle-de-versao-distribuido/
  9. antoniolazaro.github.io