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

相关推荐
IT_张三7 小时前
Ubuntu Linux运维实战指南4_文件系统基础知识
linux·运维·ubuntu
wangjun51598 小时前
linux redis ipv6、ipv4 只接收本地访问、接收本地和远程访问
linux·运维·服务器
eaglesstone8 小时前
centos 9 时间同步服务
linux·运维·centos
信阳农夫8 小时前
linux中yum是干啥的?
linux·运维·服务器
YH_DevJourney8 小时前
Linux-C/C++《C/7、字符串处理》(字符串输入/输出、C 库中提供的字符串处理函数、正则表达式等)
linux·c语言·c++
huosenbulusi9 小时前
Linux多版本管理工具介绍
linux·运维·服务器
黑子哥呢?9 小时前
linux----docker配置nginx详细教程
linux·运维·nginx·docker
垚垚 Securify 前沿站10 小时前
Apache Logic4j 库反序列化漏洞复现与深度剖析
linux·网络·安全·web安全·系统安全·apache
Web极客码10 小时前
WordPress“更新失败,响应不是有效的JSON响应”问题的修复
json·github·wordpress
alden_ygq11 小时前
在阿里云Linux主机上运行大模型deepseek r1
linux·阿里云·云计算