大家好,今天给各位分享SVN和Git的区别,大部分程序员看完后都收藏了……的一些知识,其中也会对进行解释,文章篇幅可能偏长,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在就马上开始吧!
从上面可以看出,Git 确实很棒,但是Git 增加了复杂性。刚开始使用的时候你会有点困惑,因为需要建两个Repositories(Local Repositories Remote Repositories),而且指令很多。此外,您还需要知道本地存储库中有哪些指令。哪些指令位于远程存储库中。
2) Git 将内容存储为元数据,而SVN 将内容存储为文件:因为.git 目录是计算机上存储库的克隆版本。它拥有中央存储库上的所有内容,例如标签和分支。版本记录等。比较.git目录和.svn目录的大小,你会发现它们有很大的不同。
3)Git没有全局版本号,但SVN有:到目前为止,这是Git相对于SVN所缺乏的最大功能。
4)Git内容的完整性比SVN:要好。 GIT的内容存储使用SHA-1哈希算法。这可以确保代码内容的完整性,并减少在发生磁盘故障和网络问题时对存储库的破坏。
5)下载Git后,可以看到所有OffLine状态的Log,但看不到SVN。
6)一开始很烦人的一件事是SVN必须在提交之前更新。如果忘记合并,就会出现一些错误。这种情况在git中比较少见。
7) 克隆一个全新的目录。例如,如果它也有五个分支,那么SVN会同时复制5个版本的文件,这意味着相同的操作重复五次。 Git只是获取文件每个版本的元素,然后只加载主分支(master)。以我的经验,一个克隆有近万次提交(commits),五个分支,每个分支有大约1500个SVN文件花了近一个小时!而Git 只需要1 分钟!
8) Repository(存储库) :SVN 只能有一个指定的中央存储库。当这个中央存储库出现问题时,所有工作成员都陷入瘫痪,直到存储库被修复或建立新的存储库。 Git 可以拥有无限的存储库。或者,更正确地说,每个Git 都是一个存储库,区别在于它们是否有活动目录(Git 工作树)。如果主仓库(例如GitHub上的仓库)出现问题,工作成员仍然可以在本地仓库中提交并等待主仓库恢复。工作成员还可以提交到其他存储库!
9)分支(Branch) 在SVN中,分支是一个完整的目录。并且该目录下有完整的实际文件。如果一个员工想开一家新分店,那将会影响“全世界”!每个人都会有和你一样的分支。如果你的分支机构被用来进行破坏工作(安全测试),那就就像传染病一样。如果你换了一个分支,其他人就得重新切分支,重新下载,这是非常血腥的。使用Git,每个工作成员都可以在他或她自己的本地存储库中打开无限的分支。例如:当我想尝试破坏我自己的程序(安全测试),并想保留这些修改的文件以供将来使用时,我可以打开一个分支并做我喜欢的事情。无需担心妨碍其他工作人员。只要我不合并并提交到主存储库,工作中的任何人都不会受到影响。当我不再需要这个分支时,我只需从本地存储库中删除它即可。无痛、不痒。
Git 分支名称可以使用不同的名称。例如:我的本地分支名为OK,但主存储库中的名称实际上是master。
最值得一提的是,我可以在Git 中的任意提交点打开分支! (一种方法是使用gitk all 观察整个提交记录,然后在任意点打开分支。)
原创文章,作者:小su,如若转载,请注明出处:https://www.sudun.com/ask/128344.html
用户评论
未来未必来
我在这行转了一段时间,还真的没好好理解过svn和git的区别呢!这篇博文读下来醍醐灌顶啊,解释得很清晰,终于明白了为什么git这么受欢迎的原因。收藏!
有7位网友表示赞同!
↘▂_倥絔
作为一名菜鸟程序员,之前一直对版本控制的概念感到迷茫,还好遇到了这篇文章!把SVN和Git的优缺点都罗列出来了,看得懂又好理解,真是太感谢作者了!
有16位网友表示赞同!
封心锁爱
说实话,我一直觉得SVN已经够用了,没必要折腾git这种复杂的东西。但看完这篇博文之后,我开始对Git有些许期待了。听说它在协作开发方面表现出色?准备找个时间学习一下。
有11位网友表示赞同!
炙年
文章讲的不错,但我觉得对于一些熟悉SVN的用户来说,可能觉得内容比较基础。不知道作者有没有什么高级版本的对比,例如针对大型项目的场景呢?
有16位网友表示赞同!
柠夏初开
我对这两种版本控制系统一直很懵。这篇博文能解释得这么清楚简洁,真是太好了!终于解开了我的疑惑。收藏夹必备了!
有17位网友表示赞同!
致命伤
Git确实好用,但是学习成本还是比较高的,尤其是对于那些对命令行不熟悉的人来说。希望作者可以多写一些针对初学者的教程,帮助更多人快速上手Git!
有6位网友表示赞同!
╯念抹浅笑
这篇博文解释得很到位了!我之前一直在使用SVN,现在明白了Git在协作开发方面的优势,真是太棒了!打算尽快迁移到Git上,看看效果怎么样。
有13位网友表示赞同!
小清晰的声音
说实话,我觉得文章总结不够全面,没对比一下两种版本控制系统的安全性、配置难度等方面。如果能深入探讨这些细节,会更加有价值!
有8位网友表示赞同!
雨后彩虹
作者的讲解很到位,把SVN和Git的区别解释得很清楚。收藏备用,有机会再好好学习一下这两个版本控制系统!
有5位网友表示赞同!
微信名字
文章内容简单易懂,适合初学者阅读学习。不过对于熟悉两种版本控制系统的程序员来说,可能没什么帮助了。
有9位网友表示赞同!
秘密
我之前一直觉得 SVN 够用了,但看完这篇文章后想尝试 Git 了!感觉 Git 的灵活性和协作能力更强,说不定能提高我的开发效率!
有11位网友表示赞同!
寂莫
这篇博文把SVN和Git的区别解释得很清楚了,让我终于明白为什么Git现在这么火了!以后要用Git来管理项目,谢谢作者!
有12位网友表示赞同!
怅惘
虽然我一直在使用 Git ,但还是从这篇文章中学到了不少东西。例如关于分支策略的讲解很有帮助,原来还有那么多细节需要注意!
有6位网友表示赞同!
放血
文章写的不错,对初学者很有帮助。不过对于一些经验丰富的程序员来说,可能觉得内容太基础了,需要更深入的分析和比较。
有20位网友表示赞同!
站上冰箱当高冷
我很喜欢这篇文章的写法,简洁明了,重点突出。把 SVN 和 Git 的优缺点都总结了,让我很容易就能明白它们之间的区别。点赞!
有18位网友表示赞同!
刺心爱人i
我之前在使用 SVN 时经常会遇到冲突问题,非常烦恼!看了这篇博文之后才知道 Git 在解决冲突方面做得更好,看来以后要用 Git 管理项目了!
有16位网友表示赞同!
良人凉人
文章介绍的比较全面,涵盖了 SVN 和 Git 的主要功能和特点。不过个人感觉对于复杂场景的对比还比较缺乏,希望作者能补充相关内容。
有8位网友表示赞同!