集中式和分布式版本控制系统之间的比较[关闭]

2024-04-08

什么是优点和缺点与使用集中式与分布式版本控制系统(DVCS)?您在 DVCS 中遇到过任何问题吗?您是如何防范这些问题的?保持讨论工具的不可知性并将激烈程度降到最低。

对于那些想知道有哪些 DVCS 工具可用的人,以下是最著名的免费/开源 DVCS 的列表:

  • Git http://git.or.cz/,(用 C 语言编写)使用Linux 内核和 Ruby on Rails http://git.or.cz/gitwiki/GitProjects.
  • 水银 https://www.mercurial-scm.org,(用 Python 编写)使用Mozilla 和 OpenJDK https://www.mercurial-scm.org/wiki/ProjectsUsingMercurial.
  • Bazaar http://bazaar-vcs.org/,(用 Python 编写)使用Ubuntu 开发者 https://wiki.ubuntu.com/UbuntuDevelopment.
  • Darcs http://darcs.net/,(用 Haskell 编写)。

From 我的答案 https://stackoverflow.com/questions/77485/what-are-the-relative-strengths-and-weaknesses-of-git-mercurial-and-bazaar#77834到一个不同的question https://stackoverflow.com/questions/77485/what-are-the-relative-strengths-and-weaknesses-of-git-mercurial-and-bazaar:

分布式版本控制系统 (DVCS)解决的问题不同于 集中式 VCS。比较它们是 就像比较锤子和 螺丝刀。

集中式VCS http://en.wikipedia.org/wiki/Revision_control系统是 设计的目的是 一位受祝福的真实源头,以及 因此好。所有开发人员都在工作 (结账)从该来源,然后 添加(提交)他们的更改,然后 变得同样有福。唯一的 CVS 之间的真正区别, Subversion、ClearCase、Perforce、 VisualSourceSafe 和所有其他 CCVCSes 在工作流程中, 性能和集成,每个 产品优惠。

分布式版本控制系统 http://en.wikipedia.org/wiki/Distributed_revision_control系统是 设计的目的是 存储库与其他存储库一样好, 并且从一个存储库合并到 另一种只是另一种形式 沟通。任何语义值如 应信任哪个存储库 是从外部强加的 过程,而不是软件本身。

使用一种类型之间的真正选择 或者另一个是组织性的——如果 您的项目或组织想要 集中控制,那么 DVCS 就是 不可能的。如果您的开发人员是 预计将在各地工作 国家/世界,没有安全 宽带连接到中央 存储库,那么 DVCS 可能就是您的 救恩。如果您两者都需要,那么您 fsck。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

集中式和分布式版本控制系统之间的比较[关闭] 的相关文章

  • 如何对项目的 cron 作业进行版本控制? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 我有一堆项目 我用 git 和 fab 推送到服务器 它们是 Django 站点的负载 其中一些站点有 cron 作业 我希望处于这样的境地 通
  • 为什么coq互感类型必须具有相同的参数?

    下列的亚瑟的建议 https stackoverflow com a 17304209 403875 我改变了我的Fixpoint相互关系Inductive这种关系 建立 游戏之间的不同比较 而不是 深入研究 但现在我收到一条全新的错误消息
  • Emacs、Vim 和 JEdit 中哪些编辑器支持同时多个文本插入点?

    背景 JEdi t 以及其他一些文本编辑器 支持称为多个同时文本插入点 http groups csail mit edu uid projects simuledit usenix01 html 至少我在这里这么称呼它 要了解这意味着什么
  • Ruby 比较运算符? == 与 === [重复]

    这个问题在这里已经有答案了 和 有什么区别 什么时候应该使用哪一个 两者都只是在对象上调用的方法 这意味着对象决定哪个意味着什么 然而 Ruby 中有一些关于它们之间差异的约定 通常 比 a b几乎总是为真 如果a b是 阅读此内容的最佳位
  • 添加资源文件到VC6 dll

    我有许多 VC 6 0 项目 DSP 它们构建到没有资源文件的 dll 中 知道如何将资源添加到现有项目中吗 该项目很快就会发布一个主要版本 我想为那些目前缺少的 dll 添加一个文件版本 dll 将在发布之前重新编译 因此我只是尝试使这些
  • 将提交从一个子树应用到同一存储库中的另一个子树

    我一直在使用 git p4 将 Perforce 存储库的部分内容克隆到 git 存储库中 我检查的树具有以下 Perforce 分支 结构 回购 发布回购 发布B仓库 功能仓库 功能B 我的本地 git 存储库中有一堆 git 提交到 f
  • 我可以将 pandas.dataframe.isin() 与数字容差参数一起使用吗?

    我事先查看了以下帖子 有没有办法将 DataFrame isin 与近似因子或容差值一起使用 或者还有其他方法可以吗 如果列中的值位于一组值列表中 则过滤数据框行 https stackoverflow com questions 1206
  • 是否有任何正式的方法或已知的方法来规范化 xml 文件以生成差异?

    似乎有很多关于 WRT 工具在 xml 之间生成差异的问题 但还没有这个问题 所以任何知道这个问题的人都会向我展示一个链接或粘贴任何人已经解决了这个问题的示例 规范化 xml 文件意味着 重新排序属性的外观 重新排序标签的外观 可通过命令行
  • 如何通过FTP将多个多级(不同层次)文件从本地版本覆盖到在线版本

    我只是在本地更改了几个不同目录中的许多文件 然后将更改推送到 Subversion 但这不会更改实时版本 只会更改存储库 现在我必须通过 FTP 更新这些文件 但它们都是不同的层次结构级别 我怎么做 我知道的唯一方法是采用我的整个本地版本并
  • 如何在命令行中查看 git 存储库中的所有标签[重复]

    这个问题在这里已经有答案了 有类似 git show标签 之类的东西吗 git tag列出存储库中使用的标签 git tag l如果你使用 l您可以通过选项传递搜索模式来过滤掉标签
  • Gitlab 请求我创建一个合并请求,而不是直接推送到存储库

    我已经设置了一个deploy staging然而 每当我推入 GitLab 项目的存储库时 它有一个 DeployHQ webhook 如果这有什么不同的话 它会显示以下内容 remote remote To create a merge
  • 管理数据库更改的最佳方法[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 管理数据库更改的最佳方法是什么 无论数据库客户端的语言如何 我都需要有一个解决方案 另外 我希望能够在这些更改中使用特定的数据库功能
  • svn 外部...是或否?

    我在这里读到了一些谴责使用 svn externals 的答案 我确实看到它们如何被滥用 这确实使我们更加依赖 Subversion 但我真的不认为我们的团队会很快放弃它 无论如何 这就是我的困境 我们的解决方案引用了多个项目 这些项目位于
  • 如何使用可用内存有效地比较 1,000 张图像

    这是一个棘手的问题 我的磁盘中存储了大约 1 000 张图像 我想通过成对比较来找到彼此相似的图像 所以我必须做周围1 000 999 2 https stackoverflow com questions 46958633 generat
  • 用于 Tortoise 客户端的 Windows Subversion 服务器 (SVN)

    我的问题是这样的 在 Windows 上使用的 Subversion Server https stackoverflow com questions 615866 subversion server to use on windows 唯
  • 使用版本控制时处理多台计算机上的 web.config 差异

    我确信每个人都必须处理这些情况 我们检查我们的源代码控制解决方案 每台开发机器都有自己的资源用于调试 构建和测试 最常见的是 网络服务器 IIS 数据库 SQL Web服务器很容易处理 每个开发机器都会有自己的proj user文件来指定不
  • 添加原始哈希以在 git rebase 上提交(使用新根)

    我有一个代码库 以前用 SVN 管理 但现在用 git 管理 当代码迁移到 git 时 历史记录就丢失了 我已经设法恢复 SVN 历史记录 https stackoverflow com questions 79165 现在我正在努力git
  • PHP: Datetime::Diff 结果比较

    我试图比较两个日期之间的差异 但结果似乎非常错误 例如以下代码 datetime1 new DateTime 2009 10 11 datetime2 new DateTime 2009 10 13 interval datetime1 g
  • 将 CVS 升级到 git/hg 的技巧?

    我们仍然使用 CVS 我使用 git 和 hg 供我个人使用 尽管我对这两个工具仍然是新手 但我意识到它们更现代 更好 更快 分布式等 只是每个人都如此习惯 CVS 以至于我觉得如果我是推荐并实际将我们当前的 CVS 服务器升级 移植 转换
  • 比较字符变量

    我想在 R Studio 中比较两个不同的字符变量 第一列 BZ Pred 显示参与者预测的 5 个最常用的应用程序 第二列 BZ Act 显示实际使用最多的 5 个应用程序 现在我想创建第三列 如果第一个应用程序被正确猜测 则包含 是 如

随机推荐