Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >GitLab与SVN的对比

GitLab与SVN的对比

作者头像
超级小可爱
发布于 2023-02-20 09:23:12
发布于 2023-02-20 09:23:12
1.3K0
举报
文章被收录于专栏:小孟开发笔记小孟开发笔记

代码管理工具优点缺点

SVN

主要功能:SVN属于集中化的版本控制系统,使用起来有点像是档案仓库的感觉,支持并行读写文件,支持代码的版本化管理,功能包括取出、导入、更新、分支、改名、还原、合并等。SVN大都采用图形界面操作,直观,上手快。

优点:管理方便,逻辑明确,符合一般人思维习惯;易于管理,集中式服务器更能保证安全性;代码一致性非常高。 SVN对中文支持好,操作简单,使用没有难度,美工人员,产品人员,测试人员,实施人员都可轻松上手。使用界面统一,功能完善,操作方便。

缺点:占用存储容量大,关心所有的文件类型;如果不能连接到服务器上,基本上不可以工作;不适合开源开发

建议:SVN能清楚的按目录进行分类管理, 使项目组的管理处于有序高效的状态,SVN更适用于项目管理


Git

主要功能:Git是一个分布式版本控制系统,操作命令包括:clone,pull,push,branch ,merge ,push,rebase,Git擅长的是程序代码的版本化管理。

优点:对程序源代码进行差异化的版本管理,代码库占极少的空间。易于代码的分支化管理。不支持中文,图形界面支持差,使用难度大。不易推广。

缺点:不支持中文,图形界面支持差,使用难度大。不易推广

建议:Git更适用于代码管理。

Git是分布式的,SVN是集中式的。 这是Git和SVN的最大区别。 如果能把握这个概念的话,两者的区别基本上可以明白大半。 由于Git是分布式的,因此Git支持脱机工作,并且可以在本地执行许多操作,包括即将推出的分支功能。 SVN必须连接到网络才能正常工作。

集中式版本控制系统有一个单一的集中式服务器,用于存储所有文件的修订,协作者通过客户端连接到此服务器,以检索最新文件或提交更新。

Git复杂概念多,SVN简单易上手

所有同时掌握 Git 和 SVN 的开发者都必须承认,Git 的命令实在太多了,日常工作需要掌握add,commit,status,fetch,push,rebase等,若要熟练掌握,还必须掌握rebase和merge的区别,fetch和pull的区别等,除此之外,还有cherry-pick,submodule,stash等功能,仅是这些名词听着都很绕。

在易用性这方面,SVN 会好得多,简单易上手,对新手很友好。但是从另外一方面看,Git 命令多意味着功能多,若我们能掌握大部分 Git 的功能,体会到其中的奥妙,会发现再也回不去 SVN 的时代了。

Git分支廉价,SVN分支昂贵

在版本管理里,分支是很常使用的功能。在发布版本前,需要发布分支,进行大需求开发,需要 feature 分支,大团队还会有开发分支,稳定分支等。在大团队开发过程中,常常存在创建分支,切换分支的需求。

Git 分支是指针指向某次提交,而 SVN 分支是拷贝的目录。这个特性使 Git 的分支切换非常迅速,且创建成本非常低。

而且 Git 有本地分支,SVN 无本地分支。在实际开发过程中,经常会遇到有些代码没写完,但是需紧急处理其他问题,若我们使用 Git,便可以创建本地分支存储没写完的代码,待问题处理完后,再回到本地分支继续完成代码。

未经允许不得转载:肥猫博客 » GitLab与SVN的对比

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Git与SVN对比
Git与SVN都是版本控制系统,版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件变更的管理,是软件配置管理的核心思想之一,最主要的功能就是追踪文件的变更。
WindRunnerMax
2020/12/23
3K0
SVN与Gi的较量对比
SVN:代码控制器(版本控制器),主要是为了多人协同开发项目,管理代码。也可以管理个人代码。也叫程序界的”后悔药“。
php007
2019/08/05
1K0
SVN与Gi的较量对比
版本控制工具(CVS、SVN、GIT)简介 原
版本控制工具:  提供完备的版本管理功能,用于存储、追踪目录(文件夹)和文件的修改历史,是软件开发者的必备工具,是软件公司的基础设施。版本控制软件的最高目标,是支持软件公司的配置管理活动,追踪多个版本的开发和维护活动,及时发布软件。
wuweixiang
2018/08/14
10.9K0
版本控制工具(CVS、SVN、GIT)简介
                                                                            原
Git 很难么?带你从头到尾捋一遍,不信你学不会!
对于Git,相信大多数程序员并不会感到陌生。但是运用自如可不是一日之功,这可不,上次面阿里,就卡在了对 Git的各种理论理解与实际应用上。
民工哥
2022/04/08
6140
Git 很难么?带你从头到尾捋一遍,不信你学不会!
Git与SVN:区别与选择
DevOps时代对高效、协同的软件开发与部署提出了更高的要求,版本控制系统在其中的作用愈发关键。Git和SVN作为当前最主流的两种版本控制工具,各自拥有众多的拥趸。本文将深入探讨两者的区别、各自的优缺点,以及如何根据项目需求选择合适的版本控制工具。
DevOps持续交付
2024/01/12
2.5K0
Git与SVN:区别与选择
版本控制——总结[通俗易懂]
版本控制(Revision control)是一种软体工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。
全栈程序员站长
2022/09/20
1.7K0
day10 | Git的正确使用姿势与最佳实践 | 第三届字节跳动青训营笔记
同时这也是课表的第9天课程《Git的正确使用姿势与最佳实践》。PC端阅读效果更佳,点击文末:阅读原文即可。
千羽
2022/11/11
1.2K0
day10 | Git的正确使用姿势与最佳实践 | 第三届字节跳动青训营笔记
SVN和Git对比梳理
在日常运维工作中,经常会用到版本控制系统,目前用到最广泛的版本控制器就是SVN和Git,那么这两者之间有什么不同之处呢? SVN(Subversion)是集中式管理的版本控制器,而Git是分布式管理的版本控制器!这是两者之间最核心的区别。 SVN只有一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。 Git每一个终端都是一个仓库,客户端并不只提取最新版本的文件快照,而是把原始的代码仓库完整地镜像下来。每一次的提取操作,实际上都是一次对
洗尽了浮华
2018/01/22
1.6K0
SVN和Git对比梳理
版本控制工具 : Git VS Svn
关于版本控制工具,基本是每一个IT人,不管是开发还是测试,运维都应该掌握的专业技能。
测试小牛
2022/04/25
6570
版本控制工具 : Git VS  Svn
Git 版本管理工具(一)
Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git  —— The stupid content tracker(傻瓜式的内容跟踪器)
阳光岛主
2019/02/19
2K0
GIT 之概述与架构
GIT是如今最流行的版本控制系统。曾经系统总结过一次关于GIT的使用,抽时间整理成文。
波罗学
2019/07/31
1.5K0
GIT和SVN的区别
这是GIT和其它非分布式的版本控制系统,例如SVN,CVS等,最核心的区别。如果你能理解这个概念,那么你就已经上手一半了。需要做一点声明,GIT并不是目前第一个或唯一的分布式版本控制系统。还有一些系统,例如Bitkeeper, Mercurial等,也是运行在分布式模式上的。但GIT在这方面做的更好,而且有更多强大的功能特征。
青梅煮码
2023/03/13
6350
Git学习-05
hint: Pulling without specifying how to reconcile divergent branches ishint: di_Rudon
kwan的解忧杂货铺
2024/10/02
1160
【Git】概述
 在Linus Torvalds开发出了Git分布式版本控制系统11年后,BitKeeper宣布在Apache 2.0许可证下
陶然同学
2023/02/24
5800
【Git】概述
从 SVN 到 Git
本文从 Git 与 SVN 的对比入手,介绍如何通过 Git-SVN 开始使用 Git,并总结平时工作高频率使用到的 Git 常用命令。
腾讯工蜂
2018/10/18
4.5K2
SourceTree使用技巧
SourceTree 是 Windows 和Mac OS X 下免费的 Git 和 Hg 客户端,拥有可视化界面,容易上手操作。同时它也是Mercurial和Subversion版本控制系统工具。支持创建、提交、clone、push、pull 和merge等操作。最主要是,它是中文、它是中文、它是中文。
freesan44
2019/03/19
6.4K0
SourceTree使用技巧
谈谈分布式版本管理工具Git
Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。
阿豪聊干货
2018/08/09
7080
谈谈分布式版本管理工具Git
程序员如何选择合适的代码比较工具?
程序员代码比较工具用于比较两个版本的代码、文件或文件夹,帮助开发者快速发现差异,尤其在版本控制、代码审查、团队协作中非常有用。
不脱发的程序猿
2025/02/26
1490
程序员如何选择合适的代码比较工具?
GitLab快速入门教程
之前公司代码的管理不统一,一部分人用SVN,一部分人用Git,对于习惯了使用Linux或者Mac命令行的人来说,Git的操作更方便和快捷,和小伙伴商量了一下把整个代码管理工具切换成了Git,GitHub如果不是开源项目的话是需要付费使用,所以选择使用GitLab,由于公司没有网络安全专家,对公司的网络边界以及代码库进行扫描,如果扫描到邮箱,暴力破解后,可能就会获取代码,所以采用在自己内网搭建GitLab服务的方式,在讲正文之前,先来说说Git和SVN的区别。
zls365
2021/04/23
1.7K0
GitLab快速入门教程
Git学习-06
merge 和 rebase 都是 Git 中用于合并分支的命令,但它们的合并方式和结果略有不同。
kwan的解忧杂货铺
2024/10/02
1040
相关推荐
Git与SVN对比
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档