以Windows操作系统为例,详解版本控制系统—Git的操作
版本控制系统(Version Control System,VCS)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。在一个项目团队中,开发人员需要对代码做版本控制,而测试人员编写自动化测试脚本后,同样需要对这些内容的版本做维护和管理。目前比较热门的版本控制系统是:Git。本文主要介绍以Windows操作系统为例,在GitLab上使用Git来管理测试版本(包括自动化测试脚本、
版本控制系统(Version Control System,VCS)是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。在一个项目团队中,开发人员需要对代码做版本控制,而测试人员编写自动化测试脚本后,同样需要对这些内容的版本做维护和管理。目前比较热门的版本控制系统是:Git。
本文主要介绍以Windows操作系统为例,在GitLab上使用Git来管理测试版本(包括自动化测试脚本、测试用例、测试文档)的一系列操作,包括:Git安装、GitLab配置SSH连接、GitLab上创建仓库、上传本地项目、克隆代码到本地以及推送(Push)更新后的脚本到GitLab等。
1、Git、GitHub和GitLab
在介绍具体操作之前,我们先来了解:Git、GitHub和GitLab究竟是什么,这三者之间有什么关系。
Git:正如上面提到的,是一个版本控制系统,它是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。Git的发明者正是Linus Torvalds--Linux操作系统的开创者。
GitHub:Github和Git是两回事。Github是在线的基于Git的代码托管服务。
GitHub是2008年由Ruby on Rails编写而成。GitHub同时提供付费账户和免费账户。这两种账户都可以创建公开的代码仓库,但是只有付费账户可以创建私有的代码仓库。
GitLab:在很大程度上GitLab是仿照GitHub来做的,它们都是在线的基于Git的代码托管服务,提供了分享开源项目的平台。但是GitLab解决了GitHub付费的问题,可以创建私人的免费仓库(PS:GitLab可免费创建私有代码仓库,但是更高级的服务仍要收费)。相较于GitHub,GitLab允许免费设置仓库权限;允许用户选择分享一个project的部分代码;允许用户设置project的获取权限,进一步的提升安全性;可以设置获取到团队整体的改进进度;通过innersourcing让不在权限范围内的人访问不到该资源。
2、安装Git
Git有许多种安装方式,主要分为两种,一种是通过编译源代码来安装;另一种是使用为特定平台预编译好的安装包。本文推荐第二种安装方式,到GitHub的页面上下载支持Windows系统的exe安装文件并运行,下载链接:http://msysgit.github.com/。安装Git.exe之后,开始菜单中会有 Git 文件夹,目录下有:Git Bash、Git CMD和Git GUI。
3、GitLab配置SSH连接
把本地的项目传到GitLab上,需要先配置SSH Key。当然也可以不需要SSH Key连接,可以通过HTTPS的方式上传本地项目,只是HTTPS连接时,每次要输入用户名、密码。
(1)首先,在开始菜单里找到“Git”->“Git Bash”并打开。输入如下命令以生成一个新的SSH:
$ssh-keygen -t rsa -C "email" #gitlab 注册的邮箱
然后直接回车,不用填写东西。之后会让你输入密码(可以不输入密码,直接为空,这样更新代码不用每次输入id_rsa密码了)。然后就会在“C:\Users\电脑用户名”路径下生成一个目录.ssh,里面有两个文件:id_rsa , id_rsa.pub(id_rsa中保存的是私钥,id_rsa.pub中保存的是公钥)。
(2)在如下图的GitLab上打开SSH keys->add key页面,把 id_rsa.pub公钥的内容复制进去就可以了。
图GitLab1
(3)在Git Bash上配置账户,命令如下:
$ git config --global user.name "your_username" #设置用户名
$ git config --global user.email "your_registered_github_Email" #设置邮箱地址(GitLab注册的邮箱)
(4)最后,打开IDEA或Pycharm编辑器,就可以通过SSH连接来Clone已有的仓库代码了。具体操作,下面会详细介绍。
4、GitLab上创建仓库并上传本地项目
(1)在GitLab上创建仓库,如下图。首先进入GitLab选择Create a Project,填写Project name、Project description(optional)、Visibility Level。然后点【Create project】按钮创建。
图GitLab2
(2)然后在GitLab上创建README文件。打开本地电脑中的测试脚本所在文件夹,将.idea 文件的IDE配置信息删除,这样是为了保证IDE配置信息不会上传到GitLab中。
(3)选中测试脚本文件夹,鼠标右键打开Git Bash Here,依次输入如下命令:
输入git config --global user.name "你的用户名"
输入git config --global user.email "你的邮箱"
输入git init
输入git remote add origin 配置好的 SSH 地址
输入git add .
输入git commit -m "Initial commit"
输入git push -u origin master 将代码推送到GitLab端
当然也可以根据GitLab--创建仓库后会在GitLab页面上展示出命令语句,根据这些语句来一步一步地操作。上传完成之后,本地项目就出现在GitLab上。
图GitLab3
CLONE脚本到本地
配置SSH Key之后,就可以把GitLab上的脚本直接Clone到本地。打开Pycharm或者 IDEA工具,在“Check out from Version Control”中选择“Git”,然后在“Git Repository URL”中输入GitLab上的SSH Key链接;在“Parent Directory”输入Clone项目到本地的存放路径;然后在“Directory Name”中输入项目的名称,点击【Clone】按钮,就会将GitLab仓库导入到本地。
每一个Git克隆都是一个完整的文件库,含有全部历史记录和修订追踪能力,不依赖于网络连接或中心服务器。其最大特色就是“分支”及“合并”操作非常快速、简便。
图GitLab4
6、推送(Push)更新后的脚本到GitLab
本地推送更新后的脚本到GitLab,在配置了SSH Key连接后,使用Pycharm或IDEA工具进行操作是非常地方便。详情搜索网上相关工具的操作手册,此处不再详细介绍。
总之,版本控制系统—Git,可以协助软件测试人员管理测试脚本等内容。Git具有版本库本地化,支持离线提交,相对独立不影响协同开发等优点。每个编写自动化脚本的测试人员都拥有自己的版本控制库,在自己的版本库上可以任意的执行提交代码、创建分支等行为,不用担心影响到其他测试人员提交的测试脚本。大家快去试试吧。
最后:
可以我的个人V:atstudy-js,可以免费领取一份10G软件测试工程师面试宝典文档资料。以及相对应的视频学习教程免费分享!,其中包括了有基础知识、Linux必备、Mysql数据库、抓包工具、接口测试工具、测试进阶-Python编程、Web自动化测试、APP自动化测试、接口自动化测试、测试高级持续集成、测试架构开发测试框架、性能测试等。
这些测试资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)