Versionshantering är alltid bra och enligt mig ett måste när man utvecklar. VCS har länge handlat om att från ett gemensamt spår dela kod och “commit’a” sina ändringar, så kallade centraliserade VCS.
Några begrepp att få koll på:
DVCS vs CVCS
Distributed Version Control System (GIT, Mercurial)
Centralized Version Control System (SVN, CVS, CC)

Sue lägger till soup, Joe fyller på med juice och sist lägger Eve på med eggs. Sue måste göra sin commit innan joe för att han ska kunna se den och joe måste vara före Eve. Man skulle kunna lösa detta genom att göra egna brancher från main för att testa de olika tilläggen, men detta kan lätt bli komplicerat när man sedan ska merge’a ihop allt.
Nu har nya arkitekturer av VCS börjat ta över, arkitekturer där man har en egen klon av all historik av filerna lokalt. Dessa arkitekturer brukar gemensamt kallas Distributed VCS.

En jämförelse mellan SVN (CVCS) och GIT (DVCS).
Fördelar mellan systemen.
Subversion (CVCS)
GIT ((DVCS)
När det gäller storleken på repositoryt så är GIT’s verkligen små i jämförelse mot SVN.
Detta beror på att SVN alltid sparar varje fil 2 ggr, en kopia som du arbetar emot och en som sparas i .svn mappen för att hålla koll på diff’s osv.
GIT har bara en liten indexfil som innehåller ca 100 bytes data per fil.
Om man kollar på Mozilla repository’t så är SVN repot ungefär 12 GiB (fsfs backend), där 240000 filer i en mapp för de 240000 commits gjorda under de 10 års projekthistoria (detta ändrades i SVN 1.5 där varje 1000 revision blir sparad i en annan mapp)
Exakt samma historik i GIT var 2 filer på 420 MiB, 30 ggr mindre än i SVN.
Detta betyder att en full GIT klon är ofta mindre än en full SVN checkout.
Några tjänster som använder sig av DVCS
Webbfeeden beskrev tjänsten i artikeln: Distribuerad Versionshantering med Bitbucket
http://bitbucket.org/
http://gitorious.org/
https://github.com/
GIT’s grundare är Linus Torvalds, se gärna hans presentation av GIT.
källor:
https://git.wiki.kernel.org/index.php/GitSvnComparison
http://betterexplained.com/articles/intro-to-distributed-version-control-illustrated/
En kommentar
Anonymous skrev
[...] [...]
Postad 2011-07-19