Git vs SVN
Git e SVN são ambos software. Git é SCM, gerenciamento de código-fonte e um sistema de controle de revisão distribuído. SVN é um sistema de controle de revisão e versão de software.
Git é um SCM com ênfase principal na velocidade. Foi desenvolvido para o kernel Linux por Linus Torvalds. Possui um repositório com capacidades de rastreamento de revisão e histórico completo. Este repositório não depende de um servidor central ou acesso à rede. É um software livre. O Git é distribuído sob o GNU, e sua manutenção é supervisionada por Junio Hamano. O Apache Subversion, ou SVN, é distribuído sob a licença de código aberto. É um VCS não distribuído, sistema de controle de versão. Ele não possui um repositório centralizado ou um servidor centralizado. É usado principalmente para manter versões históricas e atuais de código fonte, documentação e páginas da Web. O principal objetivo do SVN é ser usado como sucessor do CVS, Concurrent Version System. Foi desenvolvido por CollabNet, Inc.
O conteúdo armazenado no Git são metadados. Ele armazena o conteúdo na pasta chamada pasta .git, que tem um tamanho maior. A pasta .git na máquina é o repositório clonado. A pasta consiste em todas as tags, histórico de versões, ramificações etc., como no repositório central; O SVN armazena arquivos. Eles não têm um repositório clonado.
Os ramos do Git são mais fáceis de trabalhar. O sistema ajuda a mesclar os arquivos rapidamente e também ajuda a encontrar os não imersos; as ramificações SVN são na verdade uma pasta presente no repositório. Para mesclar as ramificações, comandos especiais são necessários.
O SVN possui um número de revisão global; o número da revisão é um instantâneo do código-fonte; Git não tem isso.
Git possui conteúdo criptograficamente hash. Isso é feito pelo uso de um algoritmo chamado algoritmo de hash SHA1. Esse recurso ajuda a proteger o conteúdo da corrupção do repositório que ocorre devido a problemas de rede ou falhas de disco.
Resumo: