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

相关推荐
枫叶丹45 分钟前
【在Linux世界中追寻伟大的One Piece】Reactor反应堆模式
linux·运维·服务器
誓约酱1 小时前
Linux系统常用指令
linux·运维·服务器·c++
EutoCool1 小时前
Linux:文件管理(一)
linux·运维·服务器
小狮子安度因1 小时前
Linux进程管理查找相关命令
linux·运维·服务器
Mr. bigworth2 小时前
Linux安装RabbitMQ
linux·运维·rabbitmq
乐维_lwops3 小时前
双因子认证:统一运维平台安全管理策略
运维·服务器·安全
叫我龙翔3 小时前
【项目日记】仿mudou的高并发服务器 --- 实现缓冲区模块,通用类型Any模块,套接字模块
linux·运维·服务器·网络·c++
Huazzi.3 小时前
免费好用的静态网页托管平台全面对比介绍
前端·网络·github·web
不撸先疯。4 小时前
docker镜像源配置、换源、dockerhub国内镜像最新可用加速源(仓库)
运维·docker·容器·dockerhub
Stark-C4 小时前
功能齐全,支持协作 | Docker部署一款支持多人共享的私密浏览器『n.eko』
运维·docker·容器