详解 | 在本地安装使用GitHub上的开源项目

简介: 详解 | 在本地安装使用GitHub上的开源项目

前言



Airtest是一个开源项目,所以我们可以在 github.com/AirtestProj… 这里看到它的源码,除了直接看源码学习之外,我们也可以clone或者fork一份项目下来自行修改,同时还能够试用到Airtest的开发分支。


关于这个GitHub上Airtest源码的远程仓库,我们主要想与大家分享两方面的内容:


  1. 如何在本地安装并使用Airtest在GitHub上的源码;
  2. 如何上传本地的修改到Airtest仓库上给其他用户使用。


因为内容比较多,所以我们分俩期推文来介绍上述内容。今天这篇文章就是向大家介绍如何在本地安装并使用Airtest在Github上面的源码。


安装使用GitHub上的Airtest源码



先从1个具体的例子来看看第一部分的内容。Airtest远程仓库最近增加了一些新的修改,包括Android10的初步支持,以及报告部分样式的调整和BUG修复,如果我们想试用一下的话,就需要拉取Airtest仓库里面这个分支的内容到本地上,再进行测试。

具体的步骤如下:


安装Git客户端


首先,我们需要在自己的计算机上安装一个Git客户端(安装包可以从Git官网上获取)。


克隆Airtest的远程仓库到本地


找到你想存放Airtest远程仓库的目录,右键点击Git bush here,然后在命令行中输入以下命令:


git clone git@github.com:AirtestProject/Airtest.git 
复制代码


运行之后客户端就会把Airtest的远程仓库下载到你的本地目录:



如果运行命令以后,并没有开始下载,而是出现如下提示:



这表明使用命令行去访问GitHub的时候,需要先填写身份认证,即需要新增SSH密钥到你的GitHub账户上(仅需要做一次):


  1. 在客户端运行clip < ~/.ssh/id_rsa.pub,即可将SSH密钥复制到剪切板上
  2. 登录GitHub,点击右上角的头像,选择Settings
  3. 单击左侧的菜单栏中的SSH and GPG keys
  4. 再单击New SSH key
  5. title里填写自定义的描述标签,在key里面,把剪切板的密钥复制进去
  6. 单击 Add SSH key,再输入你的GitHub密码确认即可


拉取远程仓库的分支到本地


“Android10支持”相关分支的Pull Requestgithub.com/AirtestProj… ,也就是说id是618, 要把这个PR拉取到本地,需要先进去刚才克隆的Airtest文件夹里面,右键点击Git bush here,再执行以下代码:


git fetch origin refs/pull/618/head:pr618
复制代码



这条指令的意思是,将远程仓库的618号pull request拉取到本地的pr618分支上。


切换到pr618的分支


使用如下代码即可切换到pr618这个分支:


git checkout pr618
复制代码



将Airtest安装到本地python环境


在测试前还需要先将这个Airtest仓库安装到本地python环境中,在命令行执行pip install -e .(不要忘记最后是个.号),因为我们提升了yosemite.apk的版本号,所以也可能会提示重新安装yosemite.apk



安装成功后,你还可以用pip list检查一下,当前的Airtest是不是指向你克隆Airtest的目录。



测试支持Android10的分支


自此,我们就把支持Android10的pr拉取到我们本地上了,可以自由进行测试。如果大家在测试过程中遇到了问题,也欢迎大家在 github.com/AirtestProj… 这个PR的页面下方进行留言。


上传本地的修改到远程仓库上



这部分内容我们下期再见~

相关文章
|
1月前
|
人工智能 自然语言处理 iOS开发
『GitHub项目圈选19』推荐5款本周 让人爱不释手 的开源项目
『GitHub项目圈选19』推荐5款本周 让人爱不释手 的开源项目
|
1月前
|
存储 Web App开发 人工智能
『GitHub项目圈选18』推荐5款本周 超实用 的开源项目
『GitHub项目圈选18』推荐5款本周 超实用 的开源项目
|
1月前
|
人工智能 物联网 机器人
『GitHub项目圈选17』推荐5款本周 火火火 的AI开源项目
『GitHub项目圈选17』推荐5款本周 火火火 的AI开源项目
179 1
|
1月前
|
JSON 搜索推荐 程序员
『GitHub项目圈选15』推荐5款本周 深受程序员喜爱 的开源项目
『GitHub项目圈选15』推荐5款本周 深受程序员喜爱 的开源项目
|
1月前
|
人工智能 自然语言处理 NoSQL
『GitHub项目圈选13』推荐5款本周 让人爱不释手 的开源项目
『GitHub项目圈选13』推荐5款本周 让人爱不释手 的开源项目
|
1月前
|
SQL NoSQL Linux
『GitHub项目圈选11』推荐5款本周 深受开发人员青睐 的开源项目
『GitHub项目圈选11』推荐5款本周 深受开发人员青睐 的开源项目
|
1月前
|
存储 人工智能 API
『GitHub项目圈选10』推荐5款本周 实用给力 的开源项目
『GitHub项目圈选10』推荐5款本周 实用给力 的开源项目
|
1月前
|
人工智能 Java Linux
『GitHub项目圈选09』推荐5款本周大佬都在用的开源项目
『GitHub项目圈选09』推荐5款本周大佬都在用的开源项目
|
1月前
|
安全 机器人 API
『GitHub项目圈选08』推荐5款本周使用率超高的开源项目
『GitHub项目圈选08』推荐5款本周使用率超高的开源项目
|
1月前
|
SQL 人工智能 编解码
『GitHub项目圈选07』推荐5款超实用的开源项目
『GitHub项目圈选07』推荐5款超实用的开源项目