我目前Git
在掌握之前已经深入了解SVN
.这是我第一次认真的源控制管理系统学习体验.
我想知道不学习的机会成本(甚至是去学习我学到的东西)SVN
.有什么我需要注意的吗?
是否存在与之Git
相比不可行或难以忍受的事情SVN
?
The*_*heo 14
Git无法检查子树并使用它,就像它是一个完整的存储库一样.
例如,使用Subversion,您可以检查目录"trunk"并将其用作存储库.您还可以查看"branches/feature1"并使用它.使用Git,只能检查根目录(尽管最新版本可以执行稀疏检出,但不会下载所有文件,但您仍然需要检查根目录).在Git中,您将使用分支而不是检查子树.
Mar*_*air 13
我认为你可能更喜欢使用Subversion而不是git的少数用例之一是,如果你正在尝试管理一个非常大的二进制媒体存储库,人们大多只想要最新的版本.例如,假设您正在开发游戏,艺术家需要跟踪所有艺术作品的修订版,但存储库的整个历史记录将是巨大的(100千兆字节)
为了公平对待git,这是一个与其设计目的相差甚远的用例(管理源代码存储库),如果你真的想要使用git,有各种各样的解决方法或扩展可能会有所帮助,例如:
...但它仍然是一个人们可能更喜欢SVN的领域.这里有一个关于这个问题的简单介绍从GitTogether几年前.
Git无法存储空目录.可以说,这是一个优势,但是git不能做但是svn可以做的一件事.
这个Wiki有一个很好的比较:https://git.wiki.kernel.org/index.php/GitSvnComparison
总结