From: http://www.differencebetween.net/technology/software-technology/difference-between-git-and-svn/#ixzz5fIoQsWBP

Git vs SVN

Git and SVN are both software. Git is SCM, source code management , and a distributed revision control system. SVN is a revision control and software versioning system.

       Git is an SCM with its main emphasis being on speed. It was developed for Linux kernel by Linus Torvalds. It has a repository with revision tracking capacities and complete history. This repository is not dependent on a central server or network access. It is free software. Git is distributed under GNU, and its maintenance is overseen by Junio Hamano. Apache Subversion, or SVN, is distributed under the open source license. It is a non-distributed VCS, Version Control System. It does not have a repository which is either centralized or a centralized server. It is mainly used for maintaining historical and current versions of source code, documentation, and Web pages. The main aim of SVN is to be used as a successor to CVS, Concurrent Version System. It was developed by CollabNet, Inc.

       The content stored in Git is metadata. It stores the content in the folder called a .git folder, which has a larger size. The .git folder in the machine is the cloned repository. The folder consists of all the tags, version histories, branches, etc., like in the central repository; SVN stores files. They do not have a cloned repository.

       The Git branches are easier to work with. The system helps in merging the files quickly and also helps in finding the unmerged ones; the SVN branches are actually a folder present in the repository. For merging the branches, special commands are required.

       SVN has a global revision number, the revision number is a source code’s snap shot; Git does not have this.

       Git has contents which are cryptographically hashed. This is done by the usage of an algorithm referred to as SHA1 hash algorithm. This feature helps in protecting the contents from repository corruption taking place due to network issues or disk failures.

Summary:

  1. Git is a distributed VCS; SVN is a non-distributed VCS.
  2. Git has a centralized server and repository; SVN does not have a centralized server or repository.
  3. The content in Git is stored as metadata; SVN stores files of content.
  4. Git branches are easier to work with than SVN branches.
  5. Git does not have the global revision number feature like SVN has.
  6. Git has better content protection than SVN.
  7. Git was developed for Linux kernel by Linus Torvalds; SVN was developed by CollabNet, Inc.
  8. Git is distributed under GNU, and its maintenance overseen by Junio Hamano; Apache Subversion, or SVN, is distributed under the open source license.

Difference Between Git and SVN的更多相关文章

  1. GIT和SVN之间的区别及基本操作对比

    1)GIT是分布式的,SVN不是: 这是GIT和其它非分布式的版本控制系统,例如 SVN,CVS等,最核心的区别.如果你能理解这个概念,那么你就已经上手一半了.需要做一点声明,GIT并不是目前第一个或 ...

  2. GIT和SVN之间的五个基本区别

    GIT不仅仅是个版本控制系统,它也是个内容管理系统(CMS),工作管理系统等.如果你是一个具有使用SVN背景的人,你需要做一定的思想转换,来适应GIT提供的一些概念和特征.所以,这篇文章的主要目的就是 ...

  3. iOS开发——源代码管理——git(分布式版本控制和集中式版本控制对比,git和SVN对比,git常用指令,搭建GitHub远程仓库,搭建oschina远程仓库 )

    一.git简介 什么是git? git是一款开源的分布式版本控制工具 在世界上所有的分布式版本控制工具中,git是最快.最简单.最流行的   git的起源 作者是Linux之父:Linus Bened ...

  4. GIT与SVN的区别

    1.GIT是分布式的,SVN不是: 这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别.如果你能理解这个概念,那么你就已经上手一半了.需要做一点声明,GIT并不是目前第一个或唯 ...

  5. 蒋鑫:为什么 Git 比 SVN 好

    在版本控制系统的选型上,是选择Git还是SVN? 对于开源项目来说这不算问题.使用Git极大地提高了开发效率.扩大了开源项目的参与度. 增强了版本控制系统的安全性,选择Git早已是大势所趋. 但对于企 ...

  6. git vs svn

    http://www.tuicool.com/articles/e2MnAb Git与SVN的不同之处 svn为集中化的版本控制,svn获取最新的版本或者提交更新,历史记录等信息每次都要连接中央版本库 ...

  7. [git/svn]Git和SVN差异

    转自:http://blog.csdn.net/huacuilaifa/article/details/19124635 在参加百度的开源项目时接触到Git,后来又陆续在微博上看到很多宣扬Git为程序 ...

  8. git和svn的区别001

    Git和SVN之间的五个基本区别 中文原文地址:http://blog.jobbole.com/31444/ 友情链接git和svn链接2:http://blog.csdn.net/sunboy_20 ...

  9. git 和 svn的区别(转)

    英文原文:5 Fundamental differences between GIT & SVN,编译:外刊IT评论 如果你在读这篇文章,说明你跟大多数开发者一样对GIT感兴趣,如果你还没有机 ...

随机推荐

  1. docker配置代理的用户名密码

    公司访问外网全部需要经过代理服务器,在使用docker的过程中,发现就算为docker配置了代理,还是会因为没有代理服务器认证,导致pull操作失败,报如下错误: Error response fro ...

  2. 微信小程序拒绝授权,反复调起原生授权框。

    最近堕落了,有一阵子没有更新博客园了.一是比较忙,其次也没什么好的题材和工作中的解决方案可以分享的,想想还是把罕见的反复调起原生小程序授权框的方案拿出来说说.   市面上常见的解决方案是第一次拒绝后, ...

  3. Python 查看线程的进程id

    import os from threading import Thread # from multiprocessing import Process def f1(n): print('1号',o ...

  4. ---————for循环打印爱心

    //打印爱心public class Xin{ public static void main (String [] args){ for(int i=1;i<=4;i++){ for(int ...

  5. HyperLogLog算法

    项目在统计UV/PV时用到了Druid的Hyper hyperunique算法,书上介绍这种算法求出的UV/PV存在一定误差,因此需要了解下误差来自哪里. 实现去重功能,最简单的就是使用set记录集合 ...

  6. 【EMV L2】CDA复合动态数据认证/应用密文生成

    复合动态数据认证/应用密文生成处理流程:对于复合动态数据认证/应用密文生成,终端执行标准动态数据认证的步骤1到3:1.认证中心公钥的获取终端使用认证中心公钥索引(PKI)以及卡片中的注册的应用提供商标 ...

  7. Sublime 黑科技之——lorem快速输入

    需要一段文字填充某块演示的空间,但不管写什么文字都觉得不合适,那么这个黑科技你值的拥有. 在Sublime Text中,输入lorem,再按Tab键,即可快速输入一段无意义的占位字符: Lorem i ...

  8. ArcGIS中的坐标系:基本概念和常用操作(二)

    关于坐标系,上次的内容还没有结束. 上次已经解释清楚关于投影坐标系和地理坐标系的区别了,它们在实际应用上也有诸多不同. 下面这张图应该比较清晰 我们经常能发现,当计算面积时,提示面积已禁用,原因就在于 ...

  9. python 多进程的两种创建方式

    Python中使用线程有两种方式:函数或者用类来包装线程对象. 第一种---------函数 菜鸟教程的我没看懂,说说我自己懂的----看视频理解的 import time import thread ...

  10. django 分页组件

      一.仿django分页功能自己实现 urls.py 1 2 3 4 5 6 7 8 9 from django.conf.urls import url from django.contrib i ...