Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/svn/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Git SCM与SVN的区别_Git_Svn_Version Control_Mercurial_Rtc - Fatal编程技术网

Git SCM与SVN的区别

Git SCM与SVN的区别,git,svn,version-control,mercurial,rtc,Git,Svn,Version Control,Mercurial,Rtc,SCM和SVN之间的区别是什么?git与mercurial有何不同?SCM通常指的是CMRM(从变更管理到发布管理),包括版本控制 SVN只是一个简单的例子 因此,其中一个更为完整,涵盖了更为完整的开发生命周期,同时也是通用的:Team Fundation Server或RTC-Rational Team Concert-都是SCM的示例。SCM是一个通用术语,实际上没有太多意义。我听说它的意思是“软件配置管理”、“软件变更管理”和“源代码管理”,可能还有其他的。就我所知,这基本上是市场营销 如

SCM和SVN之间的区别是什么?git与mercurial有何不同?

SCM通常指的是CMRM(从变更管理到发布管理),包括版本控制

SVN只是一个简单的例子


因此,其中一个更为完整,涵盖了更为完整的开发生命周期,同时也是通用的:Team Fundation Server或RTC-Rational Team Concert-都是SCM的示例。

SCM是一个通用术语,实际上没有太多意义。我听说它的意思是“软件配置管理”、“软件变更管理”和“源代码管理”,可能还有其他的。就我所知,这基本上是市场营销

如果您认为它的意思类似于后一个短语,那么SVN(Subversion的缩写)、git和Mercurial都是特定类型的SCM系统。Git和Mercurial大致相当。虽然有一些细微的差别,但个人喜好确实是最重要的。两者都是所谓的分布式版本控制系统,这意味着不必依赖任何一个中心位置。每个使用它们的人都可以独立工作,它们也或多或少地独立地同步所有内容


颠覆是集中的。它旨在解决同样类型的问题,但通过强制所有活动通过每个人使用的一个位置来实现。这使得很多事情更容易管理,但代价是相当大的灵活性。同样,个人偏好决定了您的偏好。

SCM是软件配置管理,SVN是版本控制系统工具,是SCM的一个子集。VCS也称为修订控制,Git、Mercurial也是VCS工具(更具体地说是分布式VCS)


SVN、Git、Mercurial等是用于修订控制的工具,这是SCM中的一个过程。SCM还包括构建管理、缺陷跟踪等。

我已经尝试过Git和Mercurial(目前使用Mercurial)。据我所见,Git似乎要快一点,也许更通用,但这是以学习曲线为代价的。当我一开始尝试这两种方法时,我没有其他同事可以依赖,我发现Git的学习曲线比Mercurial的要陡峭得多。此外,我发现Mercurial在Windows(我的主要开发平台)上更易于使用

Mercurial支持Git,反之亦然,因此如果需要,您可以尝试其中一种,稍后再切换。

SVN(Subversion)是一种提供版本控制功能的工具。开发人员使用此工具检入代码。使用此功能,我们可以跟踪在软件开发过程中对文件/代码所做的更改


软件配置管理是一种用于跟踪和控制软件开发中的更改的实践。它包括构建、打包和部署软件所需的所有过程。

看到SVN被描述为相对于git/hg而言“以灵活性为代价使事情变得更简单”,这是相当奇怪的——集中式系统要老得多,所以分布式系统使事情变得不同(很大程度上更好)在过去的5年里,我同意你的观点——我个人使用git。我不想在这里暗示任何年表。我确实认为分布式系统已经极大地改进了事情,但我认为它们也确实需要更多的思考才能正确。SVN使以正确的方式做事变得容易;只是与git或hg相比,svn中的正确方式不如git/hg中的正确方式好。我不确定最后一句话在页面上是否和在我脑海中一样有意义……如果它是基于事实而不是观点和传闻,这个答案会更好:“SCM是一个通用术语,实际上没有什么意义。我听过……”。IMHO LOL“开发人员使用此工具签入他们的代码”如果OP询问您签入代码的意义,该怎么办!从他的问题来看,他显然是一个门外汉,因此,可能一个更为门外汉友好的回答/术语会更好。