首先我觉得区别可以再很多地方区分开来,我就从我自己理解的这部分先说吧!
Subversion是一个集中的数据仓库。
尽管git分布式数据仓库的显著优点(如快速和多副本)吸引了很多人,但在许多情况下,集中式数据仓库更合适。例如,如果您有一些核心代码,您希望只允许少数人访问,那么您就不希望将其放入git中。许多公司都是集中管理他们的代码,我猜所有(重要的)政府项目估计都使用一个版本控制系统来集中数据仓库。
svn的理念是符合常规的。
据说许多人(尤其是经理或老板)对版本号的理解是一种习惯,发展是一种时间的线性轨迹,它深深扎根于他们的思想中。不是一个借口,Git可选性不是很容易理解,事实上,你可能会注意到任何一本关于Git的书都会在第一季度的第一章告诉你放弃大脑中所有的传统观念,重新理解。
Subversion只提供了一种方法,没有第二种选择。
SVN是一个版本控制系统,它只提供一种方法,每个人都使用相同的方法。就是这样。这使得您可以很容易地将代码从SVN迁移到其他集中管理的VCS或其他集中管理的VCS。Git不仅仅是一个版本控制系统,它实际上是一个文件系统,它有很多拓扑知识来支持您如何在不同的环境仓库中设置代码——并且没有统一的标准。选择正确的拓扑结构成为一个问题。
以上纯属是个人理解哈,希望对你有些帮助!
我觉得GIT最实用的就是离线工作功能了。你在火车上都可以commit...