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的设计理念

相关推荐
lsh曙光4 分钟前
防火墙-iptables
linux
阳光九叶草LXGZXJ5 分钟前
达梦数据库-报错-12-[-7184]:对象定义[XXX]被修改,版本检查失败
linux·运维·服务器·数据库·sql·学习
小此方15 分钟前
Re:Linux系统篇(四十九)线程篇 · 二:为什么现代操作系统选择分页式存储?分页如何解决物理内存碎片?分页结构如何演化到页表、页目录、MMU?
linux·运维·驱动开发
Huangjin007_1 小时前
【Linux 系统篇(十一)】基础开发工具(六) —— 版本控制器 Git
linux·运维·git
j7~1 小时前
【Linux】二十六.线程篇三《Linux多线程编程:线程控制、线程ID以及进程地址空间分布、线程局部存储__thread以及clone系统调用》---详解
linux·运维·服务器·开发语言·c++·多线程编辑·线程的控制
乌萨奇也要立志学C++9 小时前
【Linux】网络基础 从零理解网络通信:局域网、跨网传输与 Socket 预备知识
linux·服务器·网络
RisunJan11 小时前
Linux命令-slabtop(实时显示内核 slab 缓存信息)
linux
栈溢出的浪漫12 小时前
国内MCP工具推荐:AIbase宣布推出MCP资源网站
github·开发者·mcp·aibase·资源网站
一可米12 小时前
gitHub.com Actions自动化发布
运维·自动化·github