zoukankan      html  css  js  c++  java
  • Difference Between Git and SVN

    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.
  • 相关阅读:
    spring-redis SortedSet类型成员的过期时间处理
    Redis "MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk"问题
    2015InfoQ软件大会技术记录
    nginx搭建文件服务器
    Electron
    TaoKeeper
    (转)前端:将网站打造成单页面应用SPA
    转(解决GLIBC_2.x找不到的编译问题)
    java编译、编码、语言设置
    Discuz! 论坛
  • 原文地址:https://www.cnblogs.com/Raul2018/p/10365595.html
Copyright © 2011-2022 走看看