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

相关推荐
uhakadotcom2 小时前
什么是esp32?
面试·架构·github
算力魔方AIPC2 小时前
如何用算力魔方4060安装PaddleOCR MCP 服务器
运维·服务器
Ray Song3 小时前
【Linux】 wget、curl 用法区别
linux·运维·服务器·curl·wget
小妖6663 小时前
本地文件夹即时变身 Web 服务器(文件服务器)
运维·服务器
qq_364371724 小时前
Docker 常见命令
运维·docker·容器
VVVVWeiYee7 小时前
TCP/UDP详解(一)
运维·网络·tcp/ip·udp·信息与通信
谢尔登8 小时前
【计算机网络】 IPV4和IPV6区别
运维·服务器·计算机网络
努力努力再努力wz8 小时前
【c++进阶系列】:万字详解多态
java·linux·运维·开发语言·c++
杭州泽沃电子科技有限公司8 小时前
工业环境电缆火灾预防的分布式光纤在线监测
运维·人工智能·科技·安全
zzz.108 小时前
Linux问答题:调优系统性能
linux·运维·云原生