git 单片机和SVN的区别
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/5872136/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Difference between SCM and SVN
提问by usmanali
What is the difference between SCM and SVN? And how does git differ from mercurial?
SCM和SVN有什么区别?git 与 mercurial 有何不同?
回答by VonC
SCM generally means Software Configuration Management, which include CMRM (Change Management up to Release Management), including versioning.
SCM一般指软件配置管理,包括CMRM(Change Management up to Release Management),包括版本控制。
SVN is only a VCS: Version Control Tool.
SVN 只是一个VCS:版本控制工具。
So one is much more complete and covers more completely the development lifecycle, while being generic: Team Fundation Server or RTC - Rational Team Concert - are both examples of SCM.
所以一个更完整,更完整地涵盖开发生命周期,同时是通用的:Team Fundation Server 或 RTC - Rational Team Concert - 都是 SCM 的例子。
回答by manojlds
SCM is Software Configuration Management and SVN is a Version Control System tool, which is a subset of SCM. VCS are also called Revision Control and Git, Mercurial are also VCS tools ( Distributed VCS to be more specific. )
SCM 是软件配置管理,SVN 是版本控制系统工具,它是 SCM 的一个子集。VCS 也称为修订控制和 Git,Mercurial 也是 VCS 工具(更具体地说是分布式 VCS。)
SVN, Git, Mercurial, etc. are tools for revision control, one of the processes in SCM. SCM also includes build management, defect tracking etc.
SVN、Git、Mercurial等都是版本控制的工具,是SCM中的流程之一。SCM 还包括构建管理、缺陷跟踪等。
回答by deong
SCM is a generic term that doesn't really mean much of anything. I've heard it as meaning "Software Configuration Management", "Software Change Management", and "Source Code Management", and there are probably others. It's basically marketing speak as far as I can tell.
SCM 是一个通用术语,实际上并没有什么意义。我听说它的意思是“软件配置管理”、“软件变更管理”和“源代码管理”,可能还有其他意思。据我所知,这基本上是营销口号。
If you view it as meaning something like the latter phrase, then SVN (abbrevation of Subversion), git, and Mercurial are all particular types of SCM systems. Git and Mercurial are roughly equivalent. There are slight differences, but personal preferences are really the majority of what matters. Both are what are called distributed revision control systems, meaning that no one central location must be relied upon. Each person using them can work independently, and they sync everything up more or less independently as well.
如果您将其视为类似于后一个短语的含义,那么 SVN(Subversion 的缩写)、git 和 Mercurial 都是特定类型的 SCM 系统。Git 和 Mercurial 大致相当。有细微的差别,但个人喜好才是最重要的。两者都是所谓的分布式修订控制系统,这意味着不必依赖任何一个中心位置。每个使用它们的人都可以独立工作,他们也或多或少独立地同步所有内容。
Subversion is centralized. It aims to solve the same sorts of problems, but does so by forcing all activity to go through one location that everyone uses. That makes a lot of things easier to manage, but at the cost of quite a large amount of flexibility. Again, personal preference dictates which you would prefer.
Subversion 是中心化的。它旨在解决相同类型的问题,但通过强制所有活动经过每个人都使用的一个位置来实现。这使得很多事情更容易管理,但代价是相当大的灵活性。同样,个人偏好决定了您更喜欢哪个。
回答by Ikruzzz
SVN (Subversion)is a tool that provides versioning functionality.Developers used this tool to check in their codes. Using this we can track down the changes made to the files/codes during the software development process.
SVN (Subversion)是一个提供版本控制功能的工具。开发人员使用这个工具来检查他们的代码。使用它,我们可以追踪在软件开发过程中对文件/代码所做的更改。
Software Configuration Managementis a practice that used to track down and control the changes in software development. It includes all the processes needed to build, package, and deploy software.
软件配置管理是一种用于跟踪和控制软件开发中的变化的实践。它包括构建、打包和部署软件所需的所有流程。
回答by John Gaines Jr.
I've tried both Git and Mercurial (and at present use Mercurial). From what I've seen Git seems to be a little faster and perhaps more versatile, but that comes at a learning curve cost. When I tried them both out at first, I had no other co-workers to rely on for info and found the learning curve of Git a good deal steeper than that of Mercurial. Also I found Mercurial to be a good deal easier to use from Windows (which is my main dev platform).
我尝试过 Git 和 Mercurial(目前使用 Mercurial)。从我所看到的,Git 似乎更快一点,而且可能更通用,但这需要学习曲线成本。当我开始尝试这两种方法时,我没有其他同事可以依赖获取信息,并且发现 Git 的学习曲线比 Mercurial 陡峭得多。此外,我发现 Mercurial 在 Windows(这是我的主要开发平台)上更易于使用。
Mercurial has support for Git and the opposite is probably true too, so you could probably try out either one and switch later if you found the need.
Mercurial 支持 Git,反之亦然,因此您可以尝试其中任何一个,如果发现需要,稍后再切换。