📜  GIT和SVN的区别

📅  最后修改于: 2021-10-24 12:48:09             🧑  作者: Mango

GIT: Git 是 Linus Torvalds 于 2005 年开发的开源分布式副控制系统。它强调速度和数据完整性,不需要集中连接。它是强大且廉价的分支,易于合并,其中每个开发人员都有自己的存储库和本地副本,他们可以在其中更改历史记录。它支持具有大量代码文件的非线性开发分支和应用程序。

以下是 GIT 中使用的一些 .git 目录结构:

  • HEAD/: git 中使用的指针结构。
  • Config/:包含所有配置首选项。
  • description/:项目描述。
  • index/:用作工作目录之间的暂存区。
  • object/:所有数据都存放在这里。
  • 日志/:记录所做的更改。

SVN: Apache Subversion 是 Apache 许可下的开源软件版本和修订控制系统。它管理存储库中存在的文件和文件夹。它可以跨网络运行,允许它被不同计算机上的人使用。我们可以说存储库就像一个普通的文件服务器,允许它被不同计算机上的人使用。

GIT 与 SVN
下表列出了 GIT 和 SVN 之间的差异:

GIT SVN
Git is open source distributed vice control system developed by Linus Torvalds in 2005. It emphasis on speed and data integrity Apache Subversion is an open source software version and revision control system under Apache license.
Git has a Distributed Model. SVN has a Centralized Model.
In git every user has their own copy of code on their local like their own branch. In SVN there is central repository has working copy that also make changes and committed in central repository.
In git we do not required any Network to perform git operation.   In SVN we required Network for runs the SVN operation. 
Git is more difficult to learn. It has more concepts and commands.  SVN is much easier to learn as compared to git.
Git deals with large number of files like binary files that change quickly that why it become slow. SVN control the large number of binary files easily.
In git we create only .git directory. In SVN we create .svn directory in each folder.
It does not not have good UI as compared to SVN. SVN has simple and better user interface .
Features of GIT:
  • Distributed System.
  • Branching.
  • Compatibility.
  • Non-linear Development.
  • Lightweight.
  • Open source.
Features of SVN:
  • Directories are versioned
  • Copying, deleting, and renaming.
  • Free-form versioned metadata .
  • Atomic commits.
  • Branching and tagging.
  • Merge tracking.
  • File locking.