Você que usa um controle de versão centralizado, exemplos:
- CVS
- SVN Subversion
- VSS Microsoft Visual Source Safe
- TFS Microsoft Team Foundation Server
nunca usou um DVCS (Distributed Version Control System), exemplos:
- GIT, desenvolvido por Linus Torvalds e usado pelo time Linux Kernel
- Mercurial (Hg), para o qual foram desenvolvidas ótimas ferramentas gráficas e é suportado pelo Google Code Project Hosting
- Bazaar
- Darcs
e pretende conhecer essa tecnologia, precisa saber dos seguintes fatos sobre o DVCS:
- o repositório é descentralizado, mas isso não impede de ter também um repositório central
- o repositório é descentralizado, e isso significa que você pode ter acesso a versões específicas da máquina de um dos desenvolvedores, que não serão publicadas para os demais
- o repositório é sempre local, isso significa que atualizações, reversões e comparações serão sensivelmente mais rápidas, pois não se comunicarão com um repositório remoto
- embora a primeira vez que você clona um repositório pode ser até 50% mais lento, as operações seguintes são mais rápidas
- é mais complexo, pois a recepção é dividida em duas etapas: a sincronização com um repositório remoto (pull) e a atualização da versão a ser editada (update)
- é mais complexo, pois a submissão é dividida em duas etapas: a gravação no repositório local (commit), e a sincronização com um repositório remoto (push)
- essa complexidade pode ser amenizada com configurações que simulem o comportamento dos antigos controles de versão (automatic update e automatic push)
- os merges são mais seguros e simples
- forks, branches e outras ramificações são feitas sem medo, devido à simplificação dos merges
- criar um repositório local exige um simples comando
- com o DVCS você vai encontrar mais usos para o controle de versão, com ele você pode controlar a versão de binários em produção, e de outros arquivos menos importantes do dia a dia para os quais não vale a pena o esforço de configurar um repositório dos SCM centralizados
- DVCS é muito útil quando trabalhando sozinho, e muito mais vantajoso quando em grupo
Um comentário:
estou comecando a mexer com GIT e, depois de conhecer SVN e TFS posso dizer que ele eh muito superior e mais completo. nao eh a toa que se o SVN foi a evolucao do CVS, GIT tai pra ser a 3a geracao.
Postar um comentário