• CodeBeamer+Mercurial实务操作手册


    1. CodeBeamer/Mercurial整合介绍 

          版本控制软件(VCS)的Repository(档案库), 在以往都是集中在Server端管理, 这方面的OpenSource代表软件有CVS和SubVersion, 但随着软件版本的变更快速,集中式的Repository其branch管理不易, 在OpenSource的社群, 分布式的版本控制软件(DVCS)逐渐广为opensource项目所使用. 而目前在opensource最热门的分布式版本控制软件则当属Mercurial与Git , 这两个分布式软件各有其支持者, 例如著名的FireFox浏览器, 其项目采用Mercurial, Linux Kernel则采用Git.

          分布式版本控制软件, 理论上是可以不用一台专职的Server来执行分布式版本控制软件, 因为每个使用者端就是一台完整的VCS Server, 当要与项目成员的code做整合的时候, 再利用push变更的code与其它团队成员的repository. 所以source code的变更是不用透过集中式的Server来做merge的. 

          由于DVCS的特性, 每一个团队成员都是一台独立的VCS Server, 但是软件还是有所谓的Baseline或是Release tag, 为了解决这个问题, 还是要有一台VCS来统合团队成员的所有source code版本变更. CodeBeamer整合了Mercurial即可以扮演这个角色. CodeBeamer+Mercurial的整合有以下好处

    • 利用CodeBeamer的Managed Mercurial Repository来管理稳定的source code版本.虽然团队成员有各自修改的branch, 但最终还是要push到CodeBeamer的Managed Repository
    • CodeBeamer的Managed Repository方便建立与维护, 例如
    • Repository可透过CodeBeamer Web接口来建立
    • 使用者账号管理
    • E-Mail通知管理
    • Source code change set与Issue的整合
    • Baseline/Release tag与source code的关联容易.

    2. Mercurial在Server端的安装与Apache设定


    CodeBeamer从5.3版后才开始支持Managed Mercurial Repository/Mercurial external repository

    • Windows平台安装
    • Linux平台安装

    3. 使用者端软件安装

    • 使用者端OS为Windows
    • 使用者端OS为Mac
    • 使用者端OS为Linux
    • 与软件开发工具IDE的整

    4. CodeBeamer/Mercurial操作流程 
    4.1 建立CodeBeamer项目

    •    新增项目
    新增项目 
    •    输入项目名称与项目信息 
    输入项目名称与信息 
    选择Finish就可以完成项目建立, 在输入项目信息的接口, 可以看到Source Code, 选择Source Code就可以顺便设定这个项目的SCM设定, 但是本例是先建立项目, 再设定SCM 
    4.2 设定项目的SCM的连结

    •    到Admin中选SCM, 然后选Mercurial 
    SCM选用Mercurial 
    •    选择Creat New Managed Repository 
    Create New Managed Repository 
    •    输入Repository名称 
    输入Repository名称 
    •    选择Finish后, CodeBeamer会开始建立与初始化Repository 
    初始化Repository 
    •    CodeBeamer建立好Repository后, 会发E-Mail通知 
    synchronize 
    4.3 将使用者/开发者端新建一个Mercurial Repository

    以下Mercurial的操作是使用TortoiseHg为范例
    •    到Golbal Settings设定Commit使用者名称 
    设定commit user name 
    •    输入Username , 也就是你的codebeamer账号名称 
    输入Username 
    •    在一个新增的目录建立一个Repository 
    于一新增目录建立一Repository 
    •    选择Create 
     
    •    Repository建立完成 
    new repository created 
    •    Repository建立好后, 在目录中会看到.hg目录与.hgignore档案 
    repository建好后, 看到.hg目录与hgignore档案 

    4.4 将Source Code项目新增到建立好的Mercurial Repository

    •    将source code放到刚新增Repository的目录 
    source coe放入新增Repository目录 
    •    点选source code的目录再用鼠标右键点选HG commit 
    commit 
    •    跟CVS/Subversion操作一样, 新增的目录或是档案要commit到Repository前要先执行Add, 点选要新增的档案后按Add 
    Add 
    •    执行Commit, 并输入commit的信息 
    Commit 

    4.5 将使用者/开发者端的Repository push到CodeBeamer的Managed Mercurial Repository

    要将使用者端的Repository Push到CodeBeamer的Managed Mercurial Repository前, 要确认使用者在CodeBeamer的项目角色有SCM commit权限
    •    在Repository目录, 点选鼠标右键, 然后从TortoiseHg选单选Synchronize, 
    synchronize 
    •    输入CodeBeamer的Managed Mercurial Repository URL 例如http://ipaddress/hg/myfirsthg myfirsthg是透过CodeBeamer建立的Repository名称, 输入好后按PUSH 
    push 
    •    输入CodeBeamer登入账号与密码

    输入帐号 
    输入帐好与密码 
    •    Push成功后, TortoiseHg的显示讯息 
    Push成功后的画面 
    •    到Codebeamer项目的Repository检视Push的log记录 
    commit log 

    5. 将commit changeset 与CodeBeamer的Issue关连 

    假设在CodeBeamer项目中的Task Tracker, 使用者被项目经理指定要处理一个工作, 这个工作需要修改Repository中的档案, 为了让项目经理审核负责这件工程师的产出, CodeBeamer支持了SCMLoop的功能, 让使用者在push changeset时可以将changeset与Task/Issue关连起来. 以下是操作说明
    •    假设使用者jeffery被指派了一份工作 
    Assign Job 
    •    jeffery修改了他计算机中的档案 
    modify 
    •    jeffery先将修改后的档案commit到自己的repository, 并在commit讯息中加上工作的代号(ID) 
    commit to repository 
    •    jeffery修改好了, 于是将自己的repository push到CodeBeamer Server中的Managed Mercurial Repository 
    push 
    •    Push成功后, 关连也产生了 
    产生关连

    转自 http://hi.baidu.com/limp_t/blog/item/46a396ce665cd433b600c887.html

  • 相关阅读:
    集合(5)—Map之HashMap()
    《转》python 10 集合
    《转》python8元组
    《转》python(7)列表
    《转》python数据类型
    《转》python对象
    《转》python
    《转》python基础下
    《转》python学习基础
    《转》python 9 字典,numpy
  • 原文地址:https://www.cnblogs.com/oisiv/p/1759659.html
Copyright © 2020-2023  润新知