Git: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
Waltercruz (discussão | contribs)
m
Embat (discussão | contribs)
Linha 58:
O projeto do Git é uma síntese da experiência de Torvalds com a manutenção do desenvolvimento altamente distribuído do projeto do Linux, junto com seu íntimo conhecimento de performance de sistemas de arquivos (conhecimentos adquiridos no mesmo projeto) e a necessidade urgente de produzir um sistema funcional em um curto espaço de tempo. Essas influências o levaram às seguintes escolhas de implementação:
 
; Suporte consistente para desenvolvimentos não-lineares: O Git suporta rápidas criações de ramos (branches) e mesclas (merges), e incluíinclui ferramentas específicas para visualização e navegação de históricos de desenvolvimento não-lineares. Uma suposição intrínseca no Git é que uma mudança será mesclada mais do que é escrita, enquanto é passada por vários revisores.
; Desenvolvimento distribuído: Assim como o [[Darcs]], o [[BitKeeper]], o [[Mercurial]], o [[SVK]], o [[Bazaar]] e o [[Monotone]], o Git dá a cada desenvolvedor uma cópia local completa de todo o histórico de desenvolvimento, e as mudanças são copiadas de um único repositório para outro. Estas mudanças são importadas como ramos (branches) adicionais de desenvolvimento, e podem sofrer uma mescla (merge) da mesma forma que um ramo de desenvolvimento local.
; Compatibilidade com protocolos/sistemas existentes: Repositórios podem ser publicados por [[HTTP]], [[FTP]], [[rsync]], um protocolo Git sobre uma porta conhecida ou por [[ssh]]. O Git também tem uma emulação de servidor [[CVS]], o que habilita a existência de clientes [[CVS]] e extensões ([[plugins]]) em diversos [[Ambiente de Desenvolvimento Integrado|ADIs]] a utilizar os repositórios Git. O [[Subversion]] e o [[svk]] podem utilizar os repositórios diretamente com o git-svn.