精华内容
下载资源
问答
  • 配置管理工具-SVN

    2015-12-14 19:42:35
    配置管理工具-SVN。包含了32位和64位的安装包。以及安装流程和教程。
  • 16个最佳软件配置管理工具

    千次阅读 2019-11-09 09:04:10
    (2019年为SCM工具) ...当今市场上充斥着各种配置管理工具。以下是精选的16种精选配置管理软件的列表,这些软件具有流行的功能和最新的下载链接。此比较列表包含开源和商业工具。 1)CFEngine配置工具 CFEngi...

    (2019年为SCM工具)
    配置管理(CM)是一种系统工程方法,用于在产品的整个生命周期内建立和维持产品的性能,功能和物理属性与其设计,要求和操作信息的一致性。它们为您的组织带来了成本效益和更好的时间管理。

    当今市场上充斥着各种配置管理工具。以下是精选的16种精选配置管理软件的列表,这些软件具有流行的功能和最新的下载链接。此比较列表包含开源和商业工具。

    1)CFEngine配置工具
    在这里插入图片描述

    CFEngine是一个配置管理框架。它使您可以安全地管理关键任务。该系统配置管理工具可作为开源软件和商业软件使用。

    特征:

    帮助您定义所需的IT基础架构状态和配置
    使您可以自动对基础结构中的每个节点进行更新和更改
    它使用在基础结构的每个节点上运行的自治代理。
    下载链接:https : //cfengine.com/

    2)人偶配置工具
    在这里插入图片描述

    Puppet是一个开源配置管理工具,用于集中和自动化配置管理过程。它用于配置,管理,部署各种应用程序和服务。

    特征:

    在整个IT基础架构中自动配置
    使您可以完全控制和查看软件交付过程。
    与模型驱动的自动化管理一起,使您可以进行快速更改或修复紧急问题。
    帮助您使用自己喜欢的版本控制系统以代码形式管理基础架构
    下载链接:https : //puppet.com

    3)CHEF配置工具
    在这里插入图片描述

    Chef是一个自动化平台,提供了一种配置和管理基础结构的方法。在此工具中,基础结构即代码意味着通过执行编码而不是执行手动执行。Chef工具可在Ruby和DSL上使用,以编写配置。

    特征:

    Chef遵循Push模式,并提供了简单的云采用方式。
    它可以帮助您提高服务弹性,开发更多无缺陷的软件。
    Chef提供自动化功能,可帮助您降低风险并提高开发各个阶段的合规性。
    配置各种基于云的SaaS服务,并集成云供应API和第三方软件。
    下载链接:https : //www.chef.io/

    4)Ansible配置工具
    在这里插入图片描述

    Ansible工具提供了简单的IT自动化解决方案。它可以帮助您避免执行重复性的任务,并释放开发人员团队进行更多战略性工作。

    特征:

    Ansible使您可以轻松地为复杂流程建模
    您会通过集成的通知了解自动化状态。
    Ansible Tower允许您管理整个基础架构。
    在Inventor中的任何主机或主机组上运行简单任务
    下载链接: https : //www.ansible.com/

    5)SALTSTACK配置工具
    在这里插入图片描述

    SaltStack是另一个有效的配置工具。它适用于主客户端设置模型或非集中式模型。该工具基于Python编程语言。SaltStack提供了推和SSH方法来与客户端进行通信。

    特征:

    Salt Cloud与各种云提供商集成,例如Google Cloud,Amazon Web服务等。
    它很简单,而且易于使用,因为您可以在设置过程中进行操作。
    Saltstack具有DSL功能,因此不需要任何逻辑和状态。
    Salt提供的自省功能可以使您轻松查看Salt内部的情况。
    下载链接:https : //www.saltstack.com/

    6)JUJU配置工具
    在这里插入图片描述
    Juju是一个开源工具,主要强调减少新一代软件的运营开销。Juju提供配置,扩展,快速部署,集成等功能。

    特征:

    提供软件置备功能。
    允许即时集成和扩展。
    通过使用超级按钮帮助您解决有关服务扩展的大多数复杂问题。
    您可以使用此工具在一个平台上使用多个PaaS。
    Kubernetes集群部署的功能。
    下载链接:https : //jujucharms.com/

    7)Rudder
    在这里插入图片描述
    Rudder是一个开源的持续配置解决方案。该工具用于满足生产基础架构的需求。这个多平台工具使您能够自动化和维护生产基础架构。

    特征:

    Web界面功能可帮助您管理节点并定义环境策略。
    使您可以自动化简单的管理任务,例如安装或配置。
    Rudder提供FULL REST API与Rudder Server通信。
    允许您动态生成主机策略。
    它提供硬件和软件的自动清单。
    下载链接:http : //www.rudder-project.org/site/

    8)TeamCity配置工具
    在这里插入图片描述

    TeamCity是由Jet Brain开发的开源持续集成服务器。TeamCity提供多达100种构建配置(作业),并运行无限制的构建。

    特征:

    可扩展性和定制
    为任何项目提供更好的代码质量
    即使没有构建运行,也可以帮助您保持CI服务器的健康和稳定
    项目级云配置文件
    全面的VCS集成
    动态生成进度报告
    下载链接: https : //www.jetbrains.com/teamcity/

    9)章鱼部署
    在这里插入图片描述

    章鱼部署工具可实现复杂应用程序部署的自动化。应用程序是本地还是云中。

    特征:

    提供可重复且可靠的部署
    复杂的部署变得容易。
    章鱼可以促进环境之间的释放。
    提供世界一流的平台支持,例如ASP.NET,Node.js,Java和许多其他脚本语言以及平台
    下载链接: https : //octopus.com

    10)ConfigHub
    在这里插入图片描述

    ConfigHub帮助团队在整个堆栈中管理,保护和交付配置。该工具使您可以存储,管理和分发单个应用程序或分布式系统的软件配置。

    特征:

    消除配置重复和错误
    任何系统拓扑的动态建模
    帮助您从一个地方控制所有配置
    下载链接: https : //www.confighub.com/

    11)阿里巴巴应用配置管理
    在这里插入图片描述
    应用程序配置管理,也称为ACM。它使您可以集中管理应用程序配置。该工具增强了DevOps,大数据和微服务的服务功能。

    特征:

    将敏感数据与应用程序代码和运行环境分开。
    为您的环境提供实时配置。
    提供多级缓存服务并确保99.99%的服务器可用性
    支持在整个生命周期内进行配置的推送日志。
    支持版本管理
    下载链接: https : //www.alibabacloud.com/product/acm

    12)Spinnaker
    在这里插入图片描述
    Netflix提供了Spinnaker配置管理工具。这是一个开放源代码的多云平台,用于以更高的速度和更高的准确性发布软件更改。

    特征:

    帮助您创建通过集成和系统测试运行的部署管道。
    它可以帮助您上下旋转服务器组,并监视您的部署。
    帮助您利用云中不变的基础架构
    下载链接: https : //www.spinnaker.io/

    13)AWS OpsWorks
    在这里插入图片描述
    AWS OpsWorks是一项配置管理服务,它提供Chef和Puppet的托管实例。OpsWorks Stacks可以灵活地定义您的应用程序体系结构和资源配置。

    特征:

    该界面直观易用,可让您快速找到要执行的操作以及OpsWorks中的其他功能。
    它允许您处理AWS资源的配置和管理。
    提供一种灵活而直接的方法来创建和管理堆栈和应用程序。
    允许您在堆栈中包括多个应用程序,这些应用程序配置为作为系统一起工作。
    下载链接:https : //aws.amazon.com/opsworks/

    14)IBM Rational Synergy
    在这里插入图片描述
    IBM Rational Synergy是易于使用的软件配置管理工具。它提供的功能使您的团队可以更快,更轻松地工作和协作。该工具可帮助您自动化流程和任务。

    特征:

    提高生产率
    帮助您在单个存储库上管理工件
    提供高级的基准和发布管理功能。
    支持软件重用和基于组件的开发
    提供高度可扩展的平台
    下载链接:https : //www.ibm.com/in-zh/marketplace/rational-synergy

    15)ZENworks Configuration Management
    在这里插入图片描述
    ZENworks Configuration Management工具可帮助您的组织在物理,虚拟和云环境中的所有设备的整个生命周期中自动化和执行IT管理流程。

    特征:

    自动化并加速Windows 10迁移
    帮助您提高用户生产力
    通过基于身份的用户和设备管理自动实施资源和策略。
    使您可以管理所有当前和将来资产的生命周期
    下载链接:https : //www.microfocus.com/zh-cn/products/zenworks-configuration-management/overview

    16)HyScale
    在这里插入图片描述
    HyScale可以标准化基于容器的应用交付。它使您的团队可以专注于应用程序,而平台则可以处理将其交付给Kubernetes的复杂性。

    特征:

    与现有CI管道轻松集成或导入现有Shell
    在开发人员和DevOps / IT之间实现无缝接口
    导出生成的YAML文件而无需锁定。
    您只需单击即可部署Kubernetes。
    下载链接:https : //www.wavemaker.com/containerized-app-delivery-platform/

    展开全文
  • 了解一下配置管理工具,以找出哪个最适合你的 DevOps 组织。-- Marco BravoDevOps 正因为有提高产品质量、缩短产品开发时间等优势,目前备受业界关注,...
    640?wx_fmt=png了解一下配置管理工具,以找出哪个最适合你的 DevOps 组织。-- Marco Bravo


    DevOps 正因为有提高产品质量、缩短产品开发时间等优势,目前备受业界关注,同时也在长足发展当中。

    DevOps 的核心价值观[1]是团队文化Culture、自动化Automation、评估Measurement和分享Sharing(CAMS),同时,团队对 DevOps 的执行力也是 DevOps 能否成功的重要因素。

    ◈  团队文化让大家团结一致;◈  自动化是 DevOps 的基础;◈  评估保证了及时的改进;◈  分享让 CAMS 成为一个完整的循环过程。

    DevOps 的另一个思想是任何东西,包括服务器、数据库、网络、日志文件、应用配置、文档、自动化测试、部署流程等,都可以通过代码来管理。

    在本文中,我主要介绍配置管理的自动化。配置管理工具作为基础架构即代码Infrastructure as Code[2](IaC)的一部分,支持使用经过测试和验证的软件开发实践,通过明文定义文件管理和配置数据中心。

    DevOps 团队只需要通过操作简单的配置文件,就可以实现应用开发中包括版本控制、测试、小型部署、设计模式在内的这些最佳实践。总而言之,配置管理工具实现了通过编写代码来使基础架构的配置和管理变得自动化。

    为什么要使用配置管理工具?

    配置管理工具可以提高应用部署和变更的效率,还可以让这些流程变得可重用、可扩展、可预测,甚至让它们维持在期望的状态,从而让资产的可控性提高。

    使用配置管理工具的优势还包括:

    ◈ 让代码遵守编码规范,提高代码可读性;◈ 具有幂等性Idempotency,也就是说,无论执行多少次重复的配置管理操作,得到的结果都是一致的;◈ 分布式的设计可以方便地管理大量的远程服务器。

    配置管理工具主要分为拉取pull模式和推送push模式。拉取模式是指安装在各台服务器上的代理agent定期从中央存储库central repository拉取最新的配置并应用到对应的服务器上;而推送模式则由中央服务器central server的中央服务器会触发其它受管服务器的更新。

    五大最流行的配置管理工具

    目前配置管理工具有很多,不同的配置管理工具都有自己最适合的使用场景。而对于下面五个我按照字母顺序列出的配置管理工具,都对 DevOps 有明显的帮助:全都具有开源许可证、使用外部配置文件、支持无人值守运行、可以通过脚本自定义运行。下面对它们的介绍都来源于它们的软件库和官网内容。

    Ansible

    “Ansible 是一个极其简洁的 IT 自动化平台,可以让你的应用和系统以更简单的方式部署。不需要安装任何代理,只需要使用 SSH 的方式和简单的语言,就可以免去脚本或代码部署应用的过程。”——GitHub Ansible 代码库[3]

    ◈  官网 [4]◈  文档 [5]◈  社区 [6]

    Ansible 是我最喜欢的工具之一,我在几年前就开始使用了。你可以使用 Ansible 在命令行中让多个服务器执行同一个命令,也可以使用 YAML 格式的剧本playbook来让它自动执行特定的操作,这促进了技术团队和非技术团队之间的沟通。简洁、无代理、配置文件对非技术人员友好是它的几个主要优点。

    由于 Ansible 不需要代理,因此对服务器的资源消耗会很少。Ansible 默认使用的推送模式需要借助 SSH 连接,但 Ansible 也支持拉取模式。剧本[7] 可以使用最少的命令集编写,当然也可以扩展为更加精细的自动化任务,包括引入角色、变量和其它人写的模块。

    你可以将 Ansible 和其它工具(包括 Ansible Works、Jenkins、RunDeck、ARA[8] 等)结合起来使用,因为这些工具 提供了运行剧本时的可追溯性[9],这样就可以创建控制流程的中央控制台。

    CFEngine

    “CFEngine 3 是一个流行的开源配置管理系统,它主要用于为大规模的系统提供自动化配置和维护。”——GitHub CFEngine 代码库[10]

    ◈  官网 [11]◈  文档 [12]◈  社区 [13]

    CFEngine 最早在 1993 年由 Mark Burgess 作为自动配置管理的科学方法提出,目的是降低计算机系统配置中的熵,最终收敛到期望的配置状态,同时还阐述了幂等性是让系统达到期望状态的能力。Burgess 在 2004 年又提出了承诺理论Promise Theory[14],这个理论描述了代理之间自发合作的模型。

    CFEngine 的最新版本已经用到了承诺理论,在各个服务器上的代理程序会从中央存储库拉取配置。CFEngine 的配置对专业技能要求较高,因此它比较适合技术团队使用。

    Chef

    “为整个基础架构在配置管理上带来便利的一个系统集成框架。”——GitHub Chef 代码库[15]

    ◈  官网 [16]◈  文档 [17]◈  社区 [18]

    Chef 通过由 Ruby 编写的“菜谱recipe”来让你的基础架构保持在最新、最兼容的状态,这些“菜谱”描述了一系列应处于某种状态的资源。Chef 既可以通过客户端-服务端的模式运行,也可以在 chef-solo[19] 这种独立配置的模式下运行。大部分云提供商都很好地集成了 Chef,因此可以使用它为新机器做自动配置。

    Chef 有广泛的用户基础,同时也提供了完备的工具包,让不同技术背景的团队可以通过“菜谱”进行沟通。尽管如此,它仍然算是一个技术导向的工具。

    Puppet

    “Puppet 是一个可以在 Linux、Unix 和 Windows 系统上运行的自动化管理引擎,它可以根据集中的规范来执行诸如添加用户、安装软件包、更新服务器配置等等管理任务。”——GitHub Puppet 代码库[20]

    ◈  官网 [21]◈  文档 [22]◈  社区 [23]

    Puppet 作为一款面向运维工程师和系统管理员的工具,在更多情况下是作为配置管理工具来使用。它通过客户端-服务端的模式工作,使用代理从主服务器获取配置指令。

    Puppet 使用声明式语言declarative language或 Ruby 来描述系统配置。它包含了不同的模块,并使用清单文件manifest files记录期望达到的目标状态。Puppet 默认使用推送模式,但也支持拉取模式。

    Salt

    “为大规模基础结构或应用程序实现自动化管理的软件。”——GitHub Salt 代码库[24]

    ◈  官网 [25]◈  文档 [26]◈  社区 [27]

    Salt 的专长就是快速收集数据,即使是上万台服务器也能够轻松完成任务。它使用 Python 模块来管理配置信息和执行特定的操作,这些模块可以让 Salt 实现所有远程操作和状态管理。但配置 Salt 模块对技术水平有一定的要求。

    Salt 使用客户端-服务端的结构(Salt minions 是客户端,而 Salt master 是服务端),并以 Salt 状态文件记录需要达到的目标状态。

    总结

    DevOps 工具领域一直在发展,因此必须时刻关注其中的最新动态。希望这篇文章能够鼓励读者进一步探索相关的概念和工具。为此,云原生计算基金会Cloud Native Computing Foundation(CNCF)在 Cloud Native Landscape Project[28] 中也提供了很好的参考案例。


    via: https://opensource.com/article/18/12/configuration-management-tools

    作者:Marco Bravo[30] 选题:lujun9972 译者:HankChow 校对:wxy

    本文由 LCTT 原创编译,Linux中国 荣誉推出

    640?wx_fmt=png
    展开全文
  • 配置管理工具SVN的使用

    千次阅读 2018-02-22 15:33:37
    配置管理人员常用 序号 行为 对应SVN操作 1 从主线上建立分支或基线 TortioseSVN ->Branch/tag,Update 2 将分支合入主线 TortioseSVN ->Merge 3 设置日志提交模板 TortioseSVN->properties-other-New tsvn:log...

    下载地址

    1、客户端

    64位V1.9.7  https://tortoisesvn.net/downloads.html 

    官网地址:https://tortoisesvn.net/

    2、服务端

    64位Visual SVN ServerV3.6.4

     https://www.visualsvn.com/server/download/

     

    服务端操作

    建立库

     


      

    创建用户

     

     

    创建用户完成。

     

    用户分组

     

    分配权限

    1、右键单击目录,单击“Properties…”。

     

    2、设置权限类型

      默认为所有人都无权限:“No Access”

     

     

    单击“Add”,选中人员,“OK”。

     

    3、“Read Only”、“Read/Write”权限,参照2中设置

     

    客户端操作

    通用操作

    右键单击,出现“Checkout”、“TortioseSVN”、“Commit”,如下图。

     

     

     

    序号

    行为

    对应SVN操作

    1

    获取服务器上文件

    Checkout

    2

    更新已下载文件

    Update

    3

    提交非新建的文件

    Commit

    4

    提交新建的代码文件

    TortioseSVN->Add,Commit

    5

    回退本地文件的修改

    TortioseSVN->Revert

    6

    解决冲突

    TortioseSVN->Clear Up

    7

    清除用户名信息

    TortioseSVN->Settings-Saved Data-Clear

    8

    浏览版本库

    TortioseSVN->Repo-browser

    9

    查看文件日志

    TortioseSVN->Show log

     

    开发人员常用

    序号

    行为

    对应SVN操作

    1

    提交非新建的代码文件

    Commit

    2

    本地修改代码,比较与服务器的差异后提交

    TortioseSVN->Diff

    3

    回退本地已修改代码文件

    TortioseSVN->Revert

    4

    忽略无需版本控制的文件

    TortioseSVN->Add to ignore list

     

    配置管理人员常用

    序号

    行为

    对应SVN操作

    1

    从主线上建立分支或基线

    TortioseSVN->Branch/tag,Update

    2

    将分支合入主线

    TortioseSVN->Merge

    3

    设置日志提交模板

    TortioseSVN->properties-other-New tsvn:logtemplate

    4

    统计信息

    TortioseSVN->Show log-Statistics

    5

    数据同步

    TortioseSVN->Properties-New-svn:externals

    6

    SVN log强制按固定格式填写 

    Hook目录下pre-commit文件

     

    帮助

    1、右键-TortioseSVN-Help


     

    2、“索引”中搜索关键字

     

     

     

     

     

    展开全文
  • 项目配置管理工具研究

    千次阅读 2014-12-09 14:56:55
    配置管理工具研究 一、软件配置管理概念的提出 每一个软件项目,无论是工程类项目,还是产品类项目,都必须经历需求分析、系统设计、编码实现、集成测试、部署、交付、维护和支持的过程。在这个过程中,将生成各种...

    配置管理工具研究

    一、软件配置管理概念的提出

    每一个软件项目,无论是工程类项目,还是产品类项目,都必须经历需求分析、系统设计、编码实现、集成测试、部署、交付、维护和支持的过程。在这个过程中,将生成各种各样不同的工件,包括文档、源程序、可执行代码、支持库。更可怕的是,频繁出现的变更是不可避免的,因此面向如此庞大且不断变动的信息集,如何使其有序、高效地存放、查找和利用就成为了一个突出的问题。

    针对这一问题,最早的开发人员尝试过的解决办法是通过手工来实现:

      1)文档:每次修改时都另存为一个新的文件,然后通过文件名进行区分,例如 "XXX 软件需求说明书V1.0, XXX软件需求说明书V1.1, XXX软件需求说明书V2.0.",并且在文件中注明每次版本变化的内容;

      2) 源代码:每次要修改时就将整个工程目录复制一份,将原来的文件夹进行改名,例如 "XX 项目V1.0、 XX项目1.01、 .",然后在新的目录中进行修改;

       但是这种方法,不仅十分繁琐,容易出错,而且会带来大量的垃圾数据。如果是团队协同开发或者是项目规模较大时,还是会造成很大的混乱。很显然,这样简陋的方法是无法应对这一问题的。

      后来,有人尝试从制造工业领域引入了"配置管理"这一概念,通过不懈的研究与实践,最终形成了一套管理办法和活动原则,这也就是软件配置管理。

    通过软件配置管理,将对软件系统中的多重版本实施系统的管理;全面记载系统开发的历史过程,包括为什么修改,谁作了修改,修改了什么;管理和追踪开发过程中危害软件质量以及影响开发周期的缺陷和变化。并对开发过程进行有效地管理和控制,完整、明确地记载开发过程中的历史变更,形成规范化的文档,不仅使日后的维护和升级得到保证,而且更重要的是,这还会保护宝贵的代码资源,积累软件财富,提高软件重用率,加快投资回报。

    二、进行软件配置管理的目的

    1、权限控制(Access Control)

    权限控制对SCM工具来说至关重要。一方面,既然是团队开发,就可能需要限制某些成员的权限;特别是大项目往往牵扯到子项目外包,到最后联调阶段会涉及到很多不同的单位,更需要权限管理。另一方面,权限控制也减小了误操作的可能性,间接提高了SCM工具的可用性(Usability)。

    2、版本控制(Version Control)

    SCM工具记录项目和文件的修改轨迹,跟踪修改信息,使软件开发工作以基线(Baseline)渐进方式完成,从而避免了软件开发不受控制的局面,使开发状态变得有序。

    SCM工具可以对同一文件的不同版本进行差异比较,可以恢复个别文件或整个项目的早期版本,使用户方便地得到升级和维护必需的程序和文档。

    SCM工具内部对版本的标识,采用了版本号(Version Number)方式,但对用户提供了多种途径来标识版本,被广泛应用的有版本号、标签(Label)和时间戳(Time Stamp)。多样灵活的标识手段,为用户提供了方便。

    3、增强的版本控制(Enhanced Version Control)

    快照(Snapshot)和分支(Branch)以基本的版本控制功能为基础,使版本控制的功能又更进一步增强。

    快照是比版本高一级的概念,它是项目中多个文件各自的当前版本的集合。快照使恢复项目的早期版本变得方便,它还支持批量签入(Check in)、批量签出(Check out)和批量加标签(Label)等操作。总之,快照是版本控制的一种增强,使版本控制更加方便高效。

    分支允许用户创建独立的开发路径,我们认为分支的典型用途有二。第一,分支和合并(Merge)一起,是支持并行开发(Concurrent Development)的有力支持。第二,分支支持多版本开发,这对发布后的维护尤其有用。比如客户报告有打印bug,小组可能从某个还未引入打印bug的项目版本引出一个分支,最终发布一个bug修订版。分支是版本控制的另一种增强。

    版本控制和增强的版本控制是SCM工具其它功能的基础。

    4、变更管理(Change Management)

    SCM工具提供有效的问题跟踪(Defect Tracking)和系统变更请求(System ChangeRequests (SCRs))管理。通过对软件生命周期各阶段所有的问题和变更请求进行跟踪记录,来支持团队成员报告(Report)、抓取(Capture)和跟踪(Track)与软件变更相关的问题,以此了解谁改变了什么,为什么改变。

    变更管理有效地支持了不同开发人员之间,以及客户和开发人员之间的交流,避免了无序和各自为政的状态。

    5、独立的工作空间(Independent Workspaces)

    开发团队成员需要在开发项目上协同、并发地工作,这样可以大大提高软件开发的效率。沙箱(Sandbox)为并行开发提供了独立的工作空间,在有的SCM工具中也称为工作目录(Working Folder)。

    使用沙箱(Sandbox),开发人员能够将所有必要的项目文件拷贝到私有的一个树型目录,修改在这些副本上进行。一旦对修改感到满意,就可以将修改合并(Merge)到开发主线(Main Line)上去;当然,如果该文件只有该成员一人修改,只需将修改过的文件签入(Check In)到主项目中即可。

    “并发和共享是同一事物的不同方面”,并发的私有工作空间共享同一套主项目(Mater Project)文件,因此有必要让所有团队成员拥有得知项目当前状态的能力。SCM工具提供刷新(Refresh)操作,某位团队成员可以使其他团队成员在主项目文件上所做的变更,在自己沙箱的图形用户界面上反应出来。

    6、管理项目的整个生命周期

    从开发、测试、发布到发布后的维护,SCM工具的使命“始于项目开发之初,终于产品淘汰之时”。SCM工具应预先提供典型的开发模式的模板,以减少用户的劳动;另一方面,也应支持用户自定义生命周期模式,以适应特殊开发需要。

    7、与主流开发环境的集成

      将版本控制功能与主流集成开发环境(IDE)集成,极大地方便了软件开发过程。从集成开发环境的角度看,版本控制是其一项新功能;从SCM工具的角度看,集成开发环境充当了沙箱的角色。

    三、常见的配置管理工具(SCM Rools)

    正如前面所述,由于软件配置管理过程十分繁杂,管理对象错综复杂,如果是采用人工的办法不仅费时费力,还容易出错,产生大量的废品。因此,引入一些自动化工具是十分有裨益的,这也是做好配置管理的必要条件。

    正是因为如此,市场上出现了大量的自动化配置管理工具,这些工具的实现原理与基本机制均十分接近,但由于其定位不同,因此各有特点。现在常见的软件配置管理工具主要有:CCC、SCCS、RCS、Rational ClearCase、Merant PVCS、Hansky Firefly、Microsoft VSS、CVS、GIT、SVN,下面我们就对这些配置管理工具做一简单的介绍。

    元老:CCC 、SCCS、 RCS

      上个世纪七十年代初期加利福利亚大学的Leon Presser 教授撰写了一篇论文,提出控制变更和配置的概念,之后在1975年,他成立了一家名为 SoftTool的公司,开发了自己的配置管理工具:CCC,这也是最早的配置管理工具之一。

    在软件配置管理工具发展史上,继CCC之后,最具有里程碑式的是两个自由软件: Marc Rochkind 的SCCS (Source Code Control System) 和 WalterTichy 的RCS (Revision Control System),它们对配置管理工具的发展做出了重大的贡献,直到现在绝大多数配置管理工具基本上都源于它们的设计思想和体系架构。

    中坚:Rational ClearCase

    Rational 公司是全球最大的软件CASE 工具提供商,现已被IBM 收购。也许是受到其拳头产品、可视化建模第一工具Rose 的影响,它开发的配置管理工具ClearCase 也是深受用户的喜爱,是现在应用面最广的企业级、跨平台的配置管理工具之一。

    ClearCase提供了比较全面的配置管理支持,其中包括版本控制、工作空间管理、Build管理等,而且开发人员无需针对其改变现有的环境、工具和工作方式。

     1)版本控制

     ClearCase 不仅可以对文件、目录、链接进行版本控制,同时还提供了先进的版本分支和归本功能用于支持并行开发。另外,它还支持广泛的文件类型。

     2)工作空间管理  

    可以为开发人员提供私人存储区,同时可以实现成员之间的信息共享,从而为每一位开发人员提供一致、灵活、可重用的工作空间域。

    3)Build管理  

    对ClearCase 控制的数据,既可以使用定制脚本,也可使用本机提供的make 程序。

    其最大的缺点就在于其价格不菲,每个客户端用户许可证大约需要几千美金,所以在国内应用群体有限。

    小工作组级:Merant PVCS

    MERANT 公司的 PVCS 能够提供对软件配置管理的基本支持,通过使用其图形界面或类似SCCS 的命令,能够基本满足小型项目开发的配置管理需求。 PVCS 虽然功能上也基本能够满足需求,但是其性能表现一直较差,逐渐地被市场所冷落。

    新秀:Hansky Firefly

    做为H a n s k y 公司软件开发管理套件中重要一员的Firefly,可以轻松管理、维护整个企业的软件资产,包括程序代码和相关文档。 Firefly是一个功能完善、运行速度极快的软件配置管理系统,可以支持不同的操作系统和多种集成开发环境,因此它能在整个企业中的不同团队,不同项目中得以应用。

    Firefly基于真正的客户机/ 服务器体系结构,不依赖于任何特殊的网络文件系统,可以平滑地运行在不同的LAN、WAN 环境中。它的安装配置过程简单易用,Firefly 可以自动、安全地保存代码的每一次变化内容,避免代码被无意中覆盖、修改。项目管理人员使用 Firefly可以有效地组织开发力量进行并行开发和管理项目中各阶段点的各种资源,使得产品发布易于管理;并可以快速地回溯到任一历史版本。系统管理员使用Firefly 的内置工具可以方便的进行存储库的备份和恢复,而不依赖于任何第三方工具。

    入门级:Microsoft VisualSource Safe

    Visual Source Safe,即VSS ,是微软公司为Visual Studio配套开发的一个小型的配置管理工具,准确来说,它仅能够称得上是一个小型的版本控制软件。 VSS的优点在于其与Visual Studio实现了无缝集成,使用简单。提供了历史版本记录、修改控制、文件比较、日志等基本功能。

    但其缺点也是十分明显的,只支持Windows平台,不支持并行开发,通过 Check out - Modify -Check in的管理方式,一个时间只允许一个人修改代码,而且速度慢、伸缩性差,不支持异地开发。甚至于微软本身也不采用其做为配置管理工具,而是使用一个名为SLM 的内部工具。

    开源免费: CVS、GIT、SVN

    CVS:

    CVS 是Concurrent VersionsSystem 的缩写,它是开放源代码软件世界的一个伟大杰作,由于其简单易用、功能强大,跨平台,支持并发版本控制,而且免费,它在全球中小型软件企业中得到了广泛使用。其最大的遗憾就是缺少相应的技术支持,许多问题的解决需要自已寻找资料,甚至是读源代码。

    SVN(Subversion):

    SVN全名Subversion,即版本控制系统。SVN与CVS一样,是一个跨平台的软件,支持大多数常见的操作系统。作为一个开源的版本控制系统,Subversion管理着随时间改变的数据。这些数据放置在一个中央资料档案库(repository)中。这个档案库很像一个普通的文件服务器,不过它会记住每一次文件的变动。这样你就可以把档案恢复到旧的版本,或是浏览文件的变动历史。Subversion是一个通用的系统,可用来管理任何类型的文件,其中包括了程序源码。作为版本管理工具,CVS出现至今,已经有二十个年头,可以说他已经走到了尽头,但可以肯定,它将继续存在着。SVN是作为CVS的代替产品而出现的。现在很多开源组织,都慢慢地转到SVN上,比如Apache跟SourceForge。SVN有着比CVS更强大的功能,比如,它可记录目录的更改,它的性能比CVS会快很多等等。

    GIT(Georgia Institute of Technology):

    GIT 是一个快速、开源、可扩展的分布式版本控制系统,因此它在(开源)和(协作编程社区)有取代SVN的趋势。GIT具有极为丰富的命令集,对内部系统提供了高级操作和完全访问。GIT与我们熟悉的大部分版本控制系统的差别是很大的。我们熟悉的Subversion、CVS、Perforce、Mercurial等等,他们使用“增量文件系统” (Delta Storage systems), 就是说它们存储每次提交(commit)之间的差异。GIT正好与之相反,它会把你的每次提交的文件的全部内容(snapshot)都会记录下来。理论上,GIT可以保存任何文档,但是最善于保存文本文档,因为它本来就是为解决软件源代码(也是一种文本文档)版本管理问题而开发的,提供了许多有助于文本分析的工具。对于非文本文档,GIT 只是简单地为其进行备份并实施版本管理。

    GIT的优点主要有:适合分布式开发,强调个体;公共服务器压力和数据量都不会太大;速度快、灵活;任意两个开发者之间可以很容易的解决冲突;离线工作。

    GIT的缺点是:资料少(起码中文资料很少);学习周期相对而言比较长;不符合常规思维;代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

    四、如何选择配置管理工具

    面对这些形形色色,各有千秋的配置管理工具,如何根据组织特点、开发团队需要,选择切合适用的工具呢?

    配置管理工具的选择所需考虑的因素大体包括以下几个因素:功能是否符合实际需求?是否符合团队特点?性能是否满意?费用是否可以接受?售后服务如何?接下来,我们就这几方面逐一深入地探讨:

    1)功能是否符合实际需求,是否符合团队特点

    工具就是用来帮助您解决问题的,因此功能是否符合实际需求是最重要的判断因素。而大多数主流配置管理工具的基本功能都能够满足,因此主要需要判断以下几个因素:

    并行开发支持

    在团队协作开发过程中,有两种主要的模式:集体代码权和个体代码权。采用集体代码权模式进行开发时,一段代码可能同时会被多个开发人员同时修改;而采用个体代码权模式进行开发时,每一段代码都始终被一个开发人员独享,别人需要修改时也会通过该开发人员完成。

    而配置管理软件针对这一情况,也采用了不同的策略:Copy-Modify-Merge(拷贝、修改、合并 ) 的并行开发模式、Check out-Modify-Check in(签出、修改、签入)的独占开发模式。

    异地开发支持

    如果你的开发团队分布在不同的开发地点,就需要对工具的异地开发功能进行仔细的评估了。大多数工具都提供基于 Web的界面,用户可以通过浏览器执行配置管理的相关操作,而且有些工具就通过这样的方法来实现对异地开发的支持。

    这种实现方法有太多的局限性,例如网络(Internet)连接带宽的限制、防火墙以及安全问题等。真正意义上的异地开发支持,是指在不同的开发地点建立各自的存储库,通过工具提供同步功能自动或手动同步。这样做的好处是与网络无关,即便各个开发地点之间没有实时连通的网络,也可以通过 E-Mail 附件等其它方式将同步包发给对方,实现手动的同步。       跨平台开发支持

    如果企业需要从事多个不同平台下的开发工作,就需要配置管理工具能够对跨平台开发提供支持,否则势必会给开发、测试、发布等各个环节带来不便,将使大量的时间被浪费于代码的手工上传、下载中。

    与开发工具的集成性

    配置管理工具与开发工具是编码过程中最常用到两种工具,因此它们之间的集成性直接影响到开发人员的便利性,如果无法良好集成,开发人员将不可避免地在配置管理工具与开发工具之间来回切换。

    2)性能是否满意

    配置管理工具软件的一些性能指标对于最终的选择也有着至关重要的影响。

    运行性能

    如果开发团队规模不大的情况下,配置管理工具软件的性能不会造成很大影响,但如果项目规模比较大,团队成员逐渐增多的情况下,其运行性能就会带来很大的影响。

    易用性

     从工具安装、配置、使用等容易程度出发,是否需要专业培训还简单培训即可。

    安全性

    是否存在相应的安全隐患。

    3)费用是否可以接受

    Rational ClearCase Hansky Firefly 等企业级配置管理工具软件都是收费的商业软件。

    4)技术支持如何

    出现相关的技术问题是否能及时的得到相应的技术支持,工具在使用过程中出现这样那样的问题是很平常的事,有些是因为使用不当,有些则是工具本身的缺陷。这些问题都会直接影响到开发团队的使用,因此随时能够找到专业技术人员解决这些问题就变成十分重要。

    五、主流免费开源配置管理工具(CVS、GIT、SVN)比较

    * 原子提交性(Atomic commit):描述了在提交更改时,能否保证所有更改要么全部提交或合并,要么不会发生任何改变。

    * 版本库模型(Repository model):描述了多个源码版本库副本间的关系,有客户端/服务器和分布式两种模式。在客户端/服务器模式下,每一用户通过客户端访问位于服务器的主版本库,每一客户机只需保存它所关注的文件副本,对当前工作副本(working copy)的更改只有在提交到服务器之后,其它用户才能看到对应文件的修改。而在分布式模式下,这些源码版本库副本间是对等的实体,用户的机器出了保存他们的工作副本外,还拥有本地版本库的历史信息。

    * 并发模式(Concurrency model):描述了当同时对同一工作副本/文件进行更改或编辑时,如何管理这种冲突以避免产生无意义的数据,有排它锁和合并模式。在排它锁模式下,只有发出请求并获得当前文件排它锁的用户才能对对该文件进行更改。而在合并模式下,用户可以随意编辑或更改文件,但可能随时会被通知存在冲突(两个或多个用户同时编辑同一文件),于是版本控制工具或用户需要合并更改以解决这种冲突。因此,几乎所有的分布式版本控制软件采用合并方式解决并发冲突。

    * 历史模式(History model):描述了如何在版本库中存贮文件的更改信息,有快照和改变集两种模式。在快照模式下,版本库会分别存储更改发生前后的工作副本;而在改变集模式下,版本库除了保存更改发生前的工作副本外,只保存更改发生后的改变信息。

    * 变更范围(Scope of change):描述了版本编号是针对单个文件还是整个目录树。

    * 网络协议(Network protocols):描述了多个版本库间进行同步时采用的网络协议。

    * 部分克隆(Partial checkout/clone):是否支持只拷贝版本库中特定的子目录。

     

     

    特征

    CVS

    GIT

    SVN

    是否原子提交

    CVS: 没有. CVS提交不是原子的

    Git: 是的. 提交都是原子的

    Subversion: 提交都是原子的

    版本库模型

    客户端/服务器

    分布式

    客户端/服务器

    并发模式

    合并

    合并或锁定

    合并

    历史模式

    改变集

    快照

    改版集/快照

    部分克隆

    支持

    不支持

    支持

    变更范围

    文件

    目录树

    目录树

        

    文件和目录是否可以移动或重命名

    CVS: 不是. 重命名不支持. 如果手动进行, 可能会损坏历史记录

    Git: 支持重命名, 这是很实用的目的. git甚至能检测到重命名之后文件的改变. 尽管如此, 基于特殊的存储结构, 重命名不会被显示的记录, git能够推导出来(在实际使用中很容易做到)

    Subversion: 是的. 支持重命名

    在移动或重命名之后智能合并

    CVS: 不能. 重命名都不支持, 就不必说智能了

    Git: 不支持.在Git FAQ里: “Git有一个重命名的命令git mv, 但是这仅仅是为了便利. 效果和移掉某个文件, 增加另外一个文件没有任何区别”

    Subversion: 不支持.

    文件和目录拷贝

    CVS: 不能. 拷贝不支持

    Git: 不能. 拷贝不支持

    Subversion: 是的. 并且拷贝非常容易. 包括产生分支

    远程存储仓库的备份

    CVS: 间接的. 可以使用John Polstra写的CVSup

    Git: 是的. 是git的内部特征

    Subversion: 间接的.

    是否传递变更到父仓库

    CVS: 不会

    Git: 是的(Linux内核开发过程经常使用这个特征)

    Subversion: 是的

    仓库权限

    CVS: 很有限.

    Git: 请看和Git一起附带的contrib/hooks/update-paranoid. 看和svnperms类似的path_rules的代码

    Subversion: 是的. 基于HTTP权限的WebDAV-based模块能够支持基于目录级的仓库

    变更集

    CVS: 不是. 变更是基于文件的

    Git: 是的. 是支持的, 创建他们很容易

    Subversion: 部分支持. 对于一次提交会隐式创建一个变更集

    跟踪线性的文件历史

    CVS: 是的. cvs annotate

    Git: 是的.(git blame)

    Subversion: 是的(svn blame)

    能够只在仓库的单目录下作用

    CVS: 是的

    Git: 不是. 尽管如此, 提交多少能被限制, 请看“Repository Permissions”

    Subversion: 是的

    跟踪未提交的变化

    CVS: 是的. 通过cvs diff

    Git: 是的. 另外, 分支在git里非常智能, 在某些工作流里能够被当成是另外一个未提交代码的存储库. 请看“git stash“命令

    Subversion: 是的. 使用svn diff

    基于单个文件的提交信息

    CVS: 不是. 提交信息是基于单次变化的

    Git: 是的. 提交信息基于变更集

    Subversion: 不是. 没有这个特征

    文档

    CVS: 非常棒. 有很多在线的tutorials和资源, 在线的书籍. 命令行客户端也支持一个在线的帮助系统

    Git: 良好. 短的帮助比较简洁难懂. man页很有分量, 但容易误解. 有很多tutorial

    Subversion: 很好. 有一些在线的书籍和一些在线的tutorials和资源. 并且书籍是以docbook/xml写的所以很容易变换成其他格式. 命令行同样提供了在线的帮助系统

    配置是否轻松

    CVS: 好. 是个事实上的标准. 基于每个系统都有并且很容易配置

    Git: 好. 在现有平台上二进制可用. 需要C编译器和Perl. 在windows上需要cygwin. 并有一些Unix特征

    Subversion: Subversion服务器需要安装在apache2模块里(如果有人希望HTTP作为底层协议的话)或使用它自身的服务器. 客户端需要Subversion特征的逻辑还有WebDAV库(针对HTTP). 安装组件很直接, 但是需要一些额外的工作(假定subversion在某些平台没有二进制包可用)

    命令集

    CVS: 包含了3个经常用到的命令的简单的命令集(cvs commit, cvs update和cvs checkout)和其它一些

    Git: 命令集很丰富, 并且和CVS不兼容

    Subversion: 类CVS的命令集, 能够很容易被CVS用户使用

    网络协议

    CVS: 好. cvs在不同的场合使用不同的协议. 协议能够通过ssh链接的加密隧道进行

    Git: 非常棒. 能够使用本地的git协议, 但也能在rsync, ssh, HTTP和HTTPS上使用

    Subversion: 非常好. Subversion服务器支持WebDAV+DeltaV(基于HTTP或HTTPS)作为底层协议, 或者它自身的协议同样能在ssh链接通道里使用.

    可移植性

    CVS: 好. 客户端能在UNIX, Windows和Mac OS上使用. 服务器端能在UNIX, 附有UNIX模拟层的Windows上使用

    Git: 客户端运行在大多数的UNIX系统上, 但没有MS-Windows本地程序. 基于cygwin的系统看起来也能使用

    Subversion: 非常好. 客户端和服务器端都能在UNIX, Windows和Mac OS X上运行

    web接口

    CVS: 是的. CVSweb, ViewVC, Chora和wwCVS

    Git: 是的. Gitweb包含在发布包中

    Subversion: 是的. ViewVC, SVN::Web, WebSVN, ViewSVN, mod_svn_view, Chora, Trac, SVN::RaWeb::Light, SVN Browser, Insurrection和perl_svn.另外, Subversion的apache服务也提供了一个基础的web接口

    图形用户界面

    CVS: 非常好. 有很多图形界面可以用: WinCVS, Cervisia(对于KDE), TortoiseCVS(Windows浏览器插件)

    Git: Gitk包含在发行版中. Qqit和Git-gui工具也可使用

    Subversion: 非常好. 有很多GUIs可用: RapidSVN(跨平台), TortoiseSVN(Windows浏览器插件), Jsvn(java), 等. 大多数都还在开发中

    六、配置管理工具选择

    通过对常见的配置管理工具的了解并结合开发人员的操作系统、开发流程、项目规模、易用性、费用及与开发环境的良好结合性等考虑,我们将采用主流的免费开源配置管理工具(CVS、GIT、SVN)中的一个。

    通过它们之间的对比,可以看出SVN有着比CVS更强大的功能,比如,它可记录目录的更改,它的性能比CVS会快很多,适用于各种级别的开发团队,它的权限控制很方便等等。

    SVN相对于GIT的优点是:管理方便,逻辑明确,符合一般人思维习惯;易于管理,集中式服务器更能保证安全性;代码一致性非常高。而相对于GIT的缺点是:服务器压力太大,数据库容量暴增;如果不能连接到服务器上,基本上不可以工作;不适合开源开发。

    GIT相对于SVN的优点是:适合分布式开发;公共服务器压力和数据量都不会太大;速度快、灵活;任意两个开发者之间可以很容易的解决冲突。但相对于SVN的缺点也很明显:资料少(起码中文资料很少);学习周期相对而言比较长;不符合常规思维;代码保密性差,一旦开发者把整个库克隆下来就可以完全公开所有代码和版本信息。

          综合考虑之后,个人觉得框架开发项目采用SVN进行配置管理比较合适。

    展开全文
  • 由于分布式项目修改某个值,就需要所有应用中的配置均需要修改, 所以项目需要将配置集中管理,在wangyuxuan大哥的帮助下,顺利完成了config-toolkit与项目集成,本文是个人在集成config-toolkit时的心得   config-...
  • Configuration management (CM) is a system engineering method for for establishing and maintaining consistency of a product’s performance, functional, and physical attributes with its design, ...
  • 1. Git 是由linux内核的开发者linus Torvalds于2005年发行的软件配置管理工具,用于管 理软件进化过程中的变化。 2. Git 仓库: (1)由三个部分组成: a. .git 目录:为本地的CMDB b. 工作目录:为本地的...
  • [转]各种配置管理工具的比较

    万次阅读 2015-09-22 10:56:42
    CC: 价高,狂大,安全性不好,功能不错,管理复杂CVS:免费,功能不全VSS:不安全,功能太少JBCM:低价,功能很弱,性能不好,管理、使用简单Firefly:价稍高,功能不错,安全性好,管理方便,上手快PVCS ...
  • Ansible 运维自动化 ( 配置管理工具 )

    万次阅读 2018-06-20 10:56:58
    简介:(参见连接https://www.cnblogs.com/wangxiaoqiangs/p/5685239.html) 当下有许多的运维自动化工具( 配置管理 ),例如:Ansible、SaltStack、Puppet、Fabric 等。 Ansible 一种集成 IT 系统的配置管理、应用...
  • 目前市场上主流的开源自动化配置管理工具有puppet、chef、ansible、saltstack。到底选择哪一个好? 我为什么选择Saltstack,考虑方式很简单,主要基于如下两个方面: 第一、语言的选择(puppet/chef vs ansible/...
  • 常见的10种配置管理工具

    千次阅读 2011-03-11 11:01:00
       配置管理工具是配置管理相关理论的实践载体,工具的功能范围在某种程度上可以直接影响一个组织中配置管理水平的高低。所以,选择一个符合自己组织的配置管理工具,是一些企业建立配置管理规程,实施...
  • 今天在其他电脑配置 SQl server 2008 R2,安装完成后,发现打开配置管理工具服务 :显示远程过程调用失败:0x800706be 这样的错误提示 之前并没有遇到过这种
  • 五款服务器配置管理工具

    千次阅读 2019-02-11 16:02:05
    这里写自定义目录标题来源为什么使用配置管理工具对比 来源 本文翻译自 Top 5 configuration management tools 为什么使用配置管理工具 Configuration management tools enable changes and deployments to be ...
  • SQLserver2019找不到配置管理工具解决办法 右击此电脑->管理
  • 卸载"Microsoft SQL Server 2012LocalDB"(带LocalDB的全部卸载),重新打开SQL配置管理器即可。
  • 配置管理工具比较

    万次阅读 2006-07-28 09:07:00
    配置管理工具比较 如何选择配置管理工具 每一个软件项目,无论是工程类项目,还是产品类项目,都必须经历需求分析、系统设计、编码实现、集成测试、部署、交付、维护和支持的过程。在这个过程中,将生成各种各样...
  • 软件配置管理

    万次阅读 多人点赞 2018-12-01 16:28:00
    第一章 1,软件配置管理用于控制变化 ...3,软件配置管理是一种标识、组织和控制修改的技术,软件配置管理应用于整个软件工程过程 4,SCM活动的目标就是为了标识变更、控制变更、确保变更正确实现...
  • 本文通过将目前国内外的一些常用的配置管理工具的简介,希望能启到一个抛砖引玉的作用,至于更为细致的介绍,会在以后的系列中进行讲解。  1、VSS-- Visual Source Safe ,此工具是Microsoft提供的,是使用的...
  •  转载来自:... 前两天,装了VS2012后,打开SQL2008配置管理工具,发现SQL服务名称里什么也没有,只有一个提示:(如图)   上网搜了,试了很多方法,像什么把windows\system32\wbem下的framedy
  • 配置管理工具应该具有的一般特性

    千次阅读 2008-06-04 16:15:00
     配置管理工具是现在软件开发中不可或缺工具之一,在组织达到一定规模时,工作的重要性就更为突出。好的配置管理应该具有如下几个特性: 1、强大的文件存储功能。可以用非常少的空间来存储大量的文件。 2、...
  • 如何选择配置管理工具

    千次阅读 2008-04-04 10:39:00
    正是因为如此,市场上出现了大量的自动化配置管理工具,这些工具的实现原理与基本机制均十分接近,但由于其定位不同,因此各有特点,下面我们就对一些常见的配置管理工具做一简单的介绍。 元老: CCC 、 SCCS 、 ...
  • QConf分布式配置管理工具 QConf

    万次阅读 2016-07-28 19:22:17
    QConf 是一个分布式配置管理工具。 用来替代传统的配置文件,使得配置信息和程序代码分离,同时配置变化能够实时同步到客户端,而且保证用户高效读取配置,这使的工程师从琐碎的配置修改、代码提交、配置上线流程中...
  • 关于配置管理系统和配置管理项:  配置管理系统的定义是  整个项目管理系统的一个子系统。它由一系列正式的书面程序组成,用于对以下工作提供技术和管理方面的指导与监督:识别并记录产品、成果、服务或部件的...
  • 开源软件配置管理过程(1)——Git

    千次阅读 2015-04-26 20:25:10
    软件配置管理过程是贯穿整个软件开发周期的重要过程,为此,也诞生了许多...在开源软件领域,开源协作的开发过程,采取的种种成熟的开发模式,却值得我们思考,于是我决定调研一下开源软件项目开发中的配置管理工具
  • 几种代码管理工具比较

    万次阅读 2017-10-31 15:47:48
    笔者有幸接触过以下几种常用的配置管理工具:VSS、SVN、Clearcase,在此做一个小小的总结,并Ctrl+C了以前一些网友的对比评论,不一定准确,只是希望通过这些总结对自己和初学者有所帮助。如果想进一步了解这些工具...
  • Nginx可视化配置工具—NginxWebUI

    千次阅读 2020-09-29 12:03:38
    介绍一款好用的网页版开源工具,同样它的功能也是Nginx配置生成器,功能非常强大,方便实用,它是:NginxWebUI。 目录 NginxWebUI介绍 NginxWebUI功能说明 NginxWebUI安装 1、jar包运行方式 1.1 下载最新版...
  • 网上没有找到我们项目合适的svn web配置工具,于是自己动手,用jsp写了一个web版的管理工具svn web admin,subversion web 管理工具,发布到tomcat上直接可以修改服务器的配置文件,密码都加密保存,成员也可以自己...
  • 版本管理工具之ClearCase

    万次阅读 2018-04-18 15:56:52
    Rational ClearCase是软件配置管理SCM工具的一种,它可以用来对代码或者其他软件开发资产进行版本控制。对于超过上百或者上千团队开发者的大型项目据说也有很好的支持,同时对于大的二进制文件,文件个数很多,整体...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,128,786
精华内容 451,514
关键字:

配置管理工具