版本控制器git与svn

1、svn

SVN(是subversion的简称)是一款基于C/S架构的,非常优秀的版本控制器(可以简单的理解为管理代码的工具,在多人协同开发的时候,尤其重要),与传统的CVS(90年代左右,一个非常优秀的代码管理器,是代码管理器的鼻祖)管理工具类似。

SVN可以随着时间的推移来管理各种数据,这些数据被放置在一个SVN管理的中央仓库(所有的代码的集合)里面。同时SVN会备份并记录每个文件每一次的修改更新变动。这样就开发者就可以回归到任何一个时间点的某一个旧的版本(对于SVN,没修改一次文件,SVN就会创建一个叫做版本的概念,是从0 开始自增的序列)。当然也可以指定文件的更新历史记录(index.php)。

SVN又叫做集中式版本控制器。严重的依赖服务器端,当服务器端无法使用的时候,版本控制也就无法再使用了。

2、git

Git是目前世界上最先进的分布式版本控制系统(没有之一)。​当这个系统的任何一个客户端出现问题的时候,都可以从另外的客户端(即使服务器挂了)获取所有的代码。

3、svn与git的区别

  1. GIT是分布式的,而SVN是集中式的
  2. GIT把内容按元数据方式存储,而SVN是按文件:因为git目录是处于个人机器上的一个克隆版的版本库,它拥有中心版本库上所有的东西,例如标签,分支,版本记录等。
  3. GIT分支和SVN的分支不同:svn会发生分支遗漏的情况,而git可以同一个工作目录下快速的在几个分支间切换,很容易发现未被合并的分支,简单而快捷的合并这些文件。
  4. GIT没有一个全局的版本号,而SVN有
  5. GIT的内容完整性要优于SVN:GIT的内容存储使用的是SHA-1哈希算法。这能确保代码内容的完整性,确保在遇到磁盘故障和网络问题时降低对版本库的破坏。
相关推荐
Franklin9 小时前
VS 版本更新git安全保护问题的解决
git
我是一只代码狗13 小时前
idea中合并git分支
git
我是一只代码狗13 小时前
idea中使用git
git·gitee·github
恋喵大鲤鱼13 小时前
git restore
git·git restore
李少兄13 小时前
Git Commit Message写错后如何修改?已Push的提交如何安全修复?
git·安全
Fireworkitte13 小时前
git stash
git
pe7er1 天前
git submodule简易指南
git
xiaocainiao8811 天前
Python 实战:构建 Git 自动化助手
git·python·自动化
Casia_Dominic2 天前
【三维重建工具】NeRFStudio、3D GaussianSplatting、Colmap安装与使用指南
git·3d·github·点云