GitHub工程获取第三方PR操作

GitHub工程获取第三方PR操作

  • [1. 源由](#1. 源由)
  • [2. 获取第三方PR](#2. 获取第三方PR)
    • [Step 1:安装gh](#Step 1:安装gh)
    • [Step 2:获取个人Token](#Step 2:获取个人Token)
    • [Step 3:通过git协议获取代码](#Step 3:通过git协议获取代码)
    • [Step 4:获取第三方PR分支](#Step 4:获取第三方PR分支)
  • [3. 总结](#3. 总结)

1. 源由

通常来说,GitHub上通常有三种场景:

  1. 工程管理:branch、tag、rebase、cherry-pick etc.
  2. 工程开发:add、commit、merge、push etc.
  3. 工程测试:pull、gh etc.

不太测试第三方的PR,所以不太熟悉。这次记录下,以便后续操作的时候可以查阅。

2. 获取第三方PR

Step 1:安装gh

详细请参阅:Installing gh on Linux and BSD

bash 复制代码
$ (type -p wget >/dev/null || (sudo apt update && sudo apt-get install wget -y)) \
&& sudo mkdir -p -m 755 /etc/apt/keyrings \
&& wget -qO- https://cli.github.com/packages/githubcli-archive-keyring.gpg | sudo tee /etc/apt/keyrings/githubcli-archive-keyring.gpg > /dev/null \
&& sudo chmod go+r /etc/apt/keyrings/githubcli-archive-keyring.gpg \
&& echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/githubcli-archive-keyring.gpg] https://cli.github.com/packages stable main" | sudo tee /etc/apt/sources.list.d/github-cli.list > /dev/null \
&& sudo apt update \
&& sudo apt install gh -y

注:后续操作,请根据提示step by step操作,我们推荐Token方式来登录注册gh。

Step 2:获取个人Token

注:前提是需要有GitHub的个人账号;如果没有账号,请先注册。

在浏览器中输入:https://github.com/settings/tokens 获取token

Step 3:通过git协议获取代码

bash 复制代码
$ git clone git@github.com:stephendade/Rpanion-server.git

Step 4:获取第三方PR分支

  1. 针对https://github.com/stephendade/Rpanion-server/issues/223这个问题,作者进行了修改并生成了PR分支。
  2. 为了确保修改有效,且不影响master分支,那么就采用该PR分支的测试。
  3. 通过PR代码分支Video: Change to I420 format for Pi cam #232找到PR命令

4. 命令行中获取PR

bash 复制代码
$ gh pr checkout 232

3. 总结

该操作步骤对于源代码的版本控制和测试是非常棒的!

当然也有一些缺陷,就是实际在部署使用的过程,需要考虑环境因素。笔者在做这个PR测试验证,就没有注意到重新安装的过程系统进行了更新。

因此,一个完成项目需要具备DFX的设计理念

相关推荐
pubuzhixing2 小时前
开源白板新方案:Plait 同时支持 Angular 和 React 啦!
前端·开源·github
cominglately2 小时前
centos单机部署seata
linux·运维·centos
魏 无羡2 小时前
linux CentOS系统上卸载docker
linux·kubernetes·centos
CircleMouse2 小时前
Centos7, 使用yum工具,出现 Could not resolve host: mirrorlist.centos.org
linux·运维·服务器·centos
木子Linux3 小时前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
mit6.8243 小时前
Ubuntu 系统下性能剖析工具: perf
linux·运维·ubuntu
鹏大师运维3 小时前
聊聊开源的虚拟化平台--PVE
linux·开源·虚拟化·虚拟机·pve·存储·nfs
watermelonoops3 小时前
Windows安装Ubuntu,Deepin三系统启动问题(XXX has invalid signature 您需要先加载内核)
linux·运维·ubuntu·deepin
滴水之功4 小时前
VMware OpenWrt怎么桥接模式联网
linux·openwrt
ldinvicible4 小时前
How to run Flutter on an Embedded Device
linux