Git vs SVN
Git и SVN - оба программные. Git - это SCM, управление исходным кодом и распределенная система контроля версий. SVN - система контроля версий и контроля версий программного обеспечения.
Git - это SCM, основной упор на скорость. Он был разработан для ядра Linux Линусом Торвальдсом. Он имеет репозиторий с возможностями отслеживания изменений и полной историей. Этот репозиторий не зависит от центрального сервера или доступа к сети. Это бесплатное программное обеспечение. Git распространяется под GNU, а его обслуживание контролирует Junio Hamano. Apache Subversion, или SVN, распространяется по лицензии с открытым исходным кодом. Это нераспределенная система управления версиями VCS. У него нет репозитория, который является либо централизованным, либо централизованным сервером. Он в основном используется для поддержки исторических и текущих версий исходного кода, документации и веб-страниц. Основной целью SVN является использование в качестве преемника CVS, Concurrent Version System. Разработано CollabNet, Inc.
Содержимое, хранящееся в Git, является метаданными. Он хранит содержимое в папке, называемой папкой .git, которая имеет больший размер. Папка .git на машине является клонированным хранилищем. Папка состоит из всех тегов, историй версий, веток и т. Д., Как в центральном репозитории; SVN хранит файлы. У них нет клонированного хранилища.
С ветками Git легче работать. Система помогает быстро объединять файлы, а также помогает находить не слитые файлы; Ветви SVN - это фактически папка, присутствующая в хранилище. Для объединения веток требуются специальные команды.
SVN имеет глобальный номер редакции, номер редакции - это моментальный снимок исходного кода; Git не имеет этого.
Git содержит содержимое, которое криптографически хешируется. Это делается с помощью алгоритма, называемого алгоритмом хеширования SHA1. Эта функция помогает защитить содержимое от повреждения хранилища, вызванного проблемами сети или сбоями диска.
Резюме: