网站建设资讯

NEWS

网站建设资讯

转换QTP对象库xx.tsr文件为xx.xml文件以便git跟踪

众所周知,Git仅能跟踪文本文件,而QTP所生成的对象库文件xx.tsr是一种二进制文件,不可以被git所跟踪。本文详细介绍了利用git的hooks特性,来将xx.tsr文件转换成xx.xml文件,以便跟踪对象库的版本历史。

创新互联公司成立于2013年,我们提供高端网站建设公司成都网站制作公司网站设计、网站定制、全网整合营销推广成都小程序开发、微信公众号开发、seo优化服务,提供专业营销思路、内容策划、视觉设计、程序开发来完成项目落地,为阳光房企业提供源源不断的流量和订单咨询。

首先,git的hooks特性是指在特定事件发生之前或者之后执行特定脚本代码的功能(从概念上类比,与监听事件、触发器等类似)。特定事件既是指git执行的特定事件,如commit,push,recieve等,以下是常见的git事件:

  • applypatch-msg

  • pre-applypatch

  • post-applypatch

  • pre-commit

  • prepare-commit-msg

  • commit-msg

  • post-commit

  • pre-rebase

  • post-checkout

  • post-merge

  • pre-receive

  • update

  • post-receive

  • post-update

  • pre-auto-gc

  • post-rewrite

在本文中,我们要用到的事件是 pre-commit和post-merge。其配置方法如下:

一)第一种方式:默认hooks目录

每个git仓库下都包含有.git/hooks目录,里面就是放置hooks(脚本)的地方,当git事件执行时,相应的hooks(脚本)就会自动执行。

注意:

git事件对应的hooks的脚本文件名"必须"与事件列表名一样(默认.git/hooks下的事例都是以.sample结尾,使用时要去掉后缀),例如写pre-commit事件的hooks时,文件名必须是pre-commit,而不是pre-commit.sample。

二)第二种方式:自定义hooks目录

创建一个.gitconfig文件,里面指定hooks目录地址,然后使用.gitconfig的配置。例如:

  1. 在仓库根目录下创建.gitconfig文件,并包含如下内容:

[core]

    hooksPath=./libs/hooks

    2. 运行如下命令来引用.gitconfig

#git config --local include.path ../.gitconfig

为了方便使用,我已经在我的GitHub上面创建了Sample仓库,大家可以clone下来直接使用。里面根据第二种方式配置了两个脚本:pre-commit和post-merge,用来实现commit前自动将xx.tsr转换成xx.xml文件以便跟踪,以及当pull下来并且merge后,再将xx.xml文件转换成QTP可使用的xx.tsr文件。

Github地址:https://github.com/TaoismLEE/Sample.git 

注意:

1. clone下来后,一定记得运行git config --local include.path ../.gitconfig来引用配置;

2. 初次将xx.tsr文件放于libs文件夹下。


文章名称:转换QTP对象库xx.tsr文件为xx.xml文件以便git跟踪
标题路径:http://cdweb.net/article/ppiogs.html