O que é git?

O que é git?

O que é git?

Hoje, a maioria dos projetos de desenvolvimento de software são esforços colaborativos. Esses projetos podem ter centenas ou milhares de pessoas trabalhando nelas. Portanto, manter o controle das mudanças é uma necessidade de colaboração mais suave. O Git é um sistema de controle de versão distribuído de código aberto que acompanha os ativos de software e ajuda a executar processos de desenvolvimento mais eficientes.

O que é um sistema de controle de versão?

Quando os desenvolvedores estão trabalhando em um software, eles precisam acompanhar suas mudanças. Um sistema de controle de versão (VCS) lembra as versões do software à medida que se move pelos vários estágios do desenvolvimento. Trabalhar com um sistema de controle de versão tem os seguintes benefícios:

  • História de longo prazo: Os sistemas de controle de versão mantêm o histórico de quem, o que e quando de qualquer modificação no código do software. Esta história é um recurso valioso para encontrar qualquer falha no software. Se houver algum problema com o novo código, você sempre poderá voltar às versões mais antigas.
  • Ramificação e fusão: A maioria dos controles de versão tem recursos de ramificação e fusão. Portanto, as equipes de desenvolvimento podem dividir o trabalho em vários fluxos e trabalhar simultaneamente em vários aspectos do projeto.
  • Rastreabilidade: O controle de versão oferece aos desenvolvedores uma maneira de rastrear de maneira fácil e confiável bugs e problemas em um software. Diminui a confusão. Cria um ambiente de colaboração eficaz e transparente.

Git - o controle da versão distribuída

Inicialmente, a maioria dos sistemas de controle de versão foi centralizada. No modelo centralizado, as informações de controle de versão como autoria, data, hora e informações de modificação seriam mantidas em um servidor ou banco de dados centralizado. O problema com este modelo era que as equipes de desenvolvimento seriam restritas pelo poder ou tráfego do servidor central. Quando o servidor central caiu, todo o sistema ficaria parado.

Em um sistema de controle de versão distribuída (DVCs), as informações da versão são mantidas com todas as cópias do código. Permite compartilhar ponto a ponto. Não há necessidade de um repositório centralizado (mesmo que seja possível configurar um).


Curta história do git

Git começou em um pouco de controvérsia como um ato de vingança. Em 2002, a comunidade Linux começou a usar o sistema de controle de versão distribuída proprietária gratuitamente. Mas em 2005, o relacionamento entre a comunidade Linux e Bitkeeper quebrou quando o status de uso livre foi revogado. Então Linus Torvalds, criador do Linux, começou a desenvolver o Git como um produto de código aberto. Naquele ano, a primeira versão do Git foi lançada. Hoje Git é o sistema de controle de versão mais popular.

Prós e contras do git

O Git é um sistema de controle de versão distribuído simples e poderoso com os seguintes prós e contras:

Prós

Desempenho: A maioria das equipes de desenvolvimento se move para o Git para os benefícios de desempenho. Comprometes, ramificação e fusão são mais rápidos no Git do que os sistemas de controle de versão centralizada, como CVS, SVN ou Perforce. Além disso, a natureza distribuída do software facilita para os desenvolvedores compartilharem o trabalho ponto a ponto. Este processo é mais rápido do que obter o código de um servidor central.

Segurança: A integridade do código é mais fácil de verificar no git. Ele usa sha1 hash criptograficamente seguro. Os hashes são exclusivos para cada modificação. Se alguém mudar de modificação, os hashes não corresponderão. Esta propriedade do Git torna mais difícil para qualquer um esgueirar -se em mudanças de código clandestinamente.

Flexibilidade: O Git foi projetado para se adaptar a qualquer fluxo de trabalho. Os sistemas de controle de versão mais antiga são mais restritivos. Mas Git dá à sua equipe mais margem de manobra. Você pode até criar um fluxo de trabalho centralizado ou integrar -se a outros sistemas de controle de versão para fazer seus sistemas herdados funcionarem.

Contras

Mais difícil de aprender: Os conceitos git nem sempre são intuitivos. Outros sistemas de controle de versão adotam uma abordagem mais baseada na interface do usuário. Comunidade Git tende a preferir a linha de comando. Portanto, é mais desafiador para usuários não técnicos aprender.

Nostalgia pelo controle de versão centralizado: Às vezes, as empresas hesitam em usar o Git porque não há controle centralizado. Mas se você precisar de um repositório centralizado, sempre poderá projetar um fluxo de trabalho para implementá -lo.


Conclusão

O Git aumentou em popularidade devido ao valor que agrega a qualquer equipe de desenvolvimento. Mesmo se você estiver trabalhando sozinho em um projeto, ter uma história confiável pode economizar muito tempo. O Git é uma ferramenta gratuita e útil para qualquer projeto de desenvolvimento de software.

Um estudo mais aprofundado:

Site Git
Git Basics
Github - site de hospedagem git
Bitbucket - site de hospedagem git

Referências:

  • https: // www.Atlassiano.com/git/tutoriais/o que é-version-controle
  • https: // www.Atlassiano.com/git/tutoriais/o que é-git
  • https: // git-scm.com/book/en/v2/finge-started a short-history-of-git
  • https: // git-scm.com/book/en/v2/finge-started-git-Basics
  • https: // github.coma