GitHub pull request(傻瓜式入门版)

基础入门版

  • pull request
    • 一、fork项目
    • 二、clone代码到本地
    • 三、进入到克隆的项目目录下
    • 四、列出所有分支
    • 五、创建一个本地分支,并追踪远程项目分支
    • 六、查看当前分支
    • 七、与远程仓库建立连接
    • 八、与上游仓库建立连接
    • 八、同步最新代码
    • 九、修改代码并提交
    • 十、提交pr

pull request

Pull Request(拉取请求)是一种非常重要的协作机制,它是 Git 和 GitHub 等代码托管平台中常见的功能。在开源项目中,Pull Request 被广泛用于参与社区贡献,从而促进项目的发展。

一、fork项目

先登录自己的github账户,找到自己要提pr的项目。这里我们以datawhalechina/grape-book为例:

如果要fork全部分支,记得一定要去掉只选择主分支的对勾(默认是只选择主分支)

等待几秒之后,进入主页就可以看到fork后的项目副本到自己的仓库目录下了。

二、clone代码到本地

执行 git clone 命令,将此副本 clone 到本地(推荐使用ssh的形式,可以避免输入用户名和密码)。即在本地的某个目录下,打开命令行,输入如下代码

git 复制代码
git clone 红色框的地址

这样子代表已经成功

三、进入到克隆的项目目录下

执行 cd 克隆项目地址 命令,进入项目目录下。即在本地的某个目录下,打开命令行,输入如下代码。

像这样子,代表已经成功。

四、列出所有分支

执行git branch -a命令,确认下是否克隆下所有分支项目

如图所示,项目四个分支已经全部clone到本地

五、创建一个本地分支,并追踪远程项目分支

执行git checkout -b v2 origin/v2命令,即在本地创建一个名为v2的分支,并将其设置为跟踪远程的v2分支。现在,你可以在本地进行v2分支上的工作。

六、查看当前分支

为了确保所有操作不犯错,我们在修改内容前,需要再一次确认下当前分支,执行git branch命令,即查看当前分支

如图所示,现在是v2分支。

七、与远程仓库建立连接

查看分支之后,我们看看是否与远程仓库建立了连接

可以看到,已经建立连接,

  • (fetch) 表示该 URL 地址用于获取远程仓库的代码(即拉取操作)。
  • (push) 表示该 URL 地址用于向远程仓库推送本地仓库的代码。

八、与上游仓库建立连接

接下来还需要与上游建立连接,这里上游指的是一开始fork的那个项目源,即datawhalechina/grape-book

执行git remote add upstream 地址,示例

python 复制代码
git remote add upstream https://github.com/datawhalechina/grape-book.git

此时,我们再输入git remote -v,就可以看到本地已经和远程仓库以及上游建立了连接。

  • origin 它的拉取作用是获取用户在 GitHub 上的 grape-book 仓库的代码。它的推送作用是将本地修改的代码推送到 用户在 GitHub 上的 grape-book 仓库中。
  • upstream 它的拉取作用是获取来自 上游成员在 GitHub 上的 grape-book 仓库的代码。它的推送作用是将本地修改的代码推送到上游在 GitHub 上的 grape-book 仓库中。

八、同步最新代码

这么做的原因是当你在开发时,如果多人协作开发同一个项目,那么可能其他人也在修改代码并提交到仓库中。如果你 fork 了这个项目的代码,那么你 fork 的代码可能已经不是最新的了,因此需要及时更新代码,以保证你的代码与仓库中最新的代码保持同步。

命令行输入以下代码:

git 复制代码
 git fetch upstream/v2

即,从上游仓库 upstream 中获取分支 v2 的最新代码,并将最新的代码合并到你当前的分支。

九、修改代码并提交

修改完毕后,提交变更的代码:

git 复制代码
git add.
git commit -m 'update'
git push -u origin v2:v2

即将本地的 v2 分支推送到名为 origin 的远程仓库的 v2 分支上,并通过 -u 参数建立本地 v2 分支与远程 v2 分支之间的追踪关系。

十、提交pr

我们回到自己仓库的项目主页,可以看到刚才提交的记录,则表示之前的操作都已成功。接下来,点击箭头所指的Pull Requests选项。

点击箭头所指的New pull request按钮

接下来,点击Creat pull request即可提交成功。

最后,只需耐心等待管理员的审核即可。开源项目的所有pr记录可以在这里查看,包括你刚才提交的。

如果你的提交被审核通过,则会像下面这个这样,显示All checks have passed

相关推荐
愚润求学9 分钟前
【Linux】进程间通信(一):认识管道
linux·运维·服务器·开发语言·c++·笔记
SHUIPING_YANG19 分钟前
Nginx 返回 504 状态码表示 网关超时(Gateway Timeout)原因排查
运维·nginx·gateway
光不度AoKaNa32 分钟前
计算机操作系统概要
linux·运维·服务器
晚秋大魔王37 分钟前
OpenHarmony 开源鸿蒙南向开发——linux下使用make交叉编译第三方库——wget
java·linux·运维·开发语言·华为·harmonyos
孤的心了不冷1 小时前
【Linux】Linux安装并配置MongoDB
linux·运维·mongodb·容器
南棱笑笑生1 小时前
20250517让NanoPi NEO core开发板在Ubuntu core16.04.2下支持TF卡的热插拔
linux·运维·ubuntu
jinlei20092 小时前
配置ssh服务-ubuntu到Windows拷贝文件方法
运维·ubuntu·ssh
magic 2452 小时前
第6章:文件权限
linux·运维·服务器
c6lala2 小时前
数据结构day3
linux·运维·服务器
snpgroupcn3 小时前
天能股份SAP系统整合实战:如何用8个月实现零业务中断的集团化管理升级
运维·系统架构