在GitHub上给开源项目贡献PR全流程详解

本文旨在为那些希望为开源仓库做贡献但不太熟悉完整工作流程的开发者提供指导。在开始之前,请确保你已经安装了git,并且已经配置好了SSH,同时完成过一次fork操作。

1. 一次性准备

首先,你需要克隆你fork下来的仓库到本地。

 git clone [email protected]:你的用户名/repository_name.git 
 # clone自己 fork 下来的仓库
 cd repository_name  # 进入项目文件夹
 git remote add upstream [email protected]原仓库拥有者的用户名/repository_name.git   # 要做贡献的原始仓库

2. 同步最新官方代码

在开始开发之前,同步最新的官方代码是非常重要的步骤。

 git fetch upstream # 拉取最新的代码
 git checkout main # 切换到主分支
 git reset --hard upstream/main # 让本地 main 变成“跟上游完全一致”的状态,通常只在“同步官方代码”时使用。 --hard :未提交改动全部丢弃
 git push origin main --force-with-lease      # 把 fork 的 main 也更新

3. 写新功能

现在,你可以在新的分支上开始开发新功能。

 git checkout -b feature/短描述 # 在新的分支上进行开发
 # 写代码、commit
 git push origin feature/短描述

4. 提 PR

在GitHub页面上,选择Compare & pull request。将base设置为原仓库的main分支,compare设置为你的新功能分支。填写标题和描述后,创建PR。

5. 后续迭代

如果官方仓库有更新,你需要再次同步。

 git fetch upstream
 git checkout feature/短描述
 git rebase upstream/main
 git push origin feature/短描述 --force-with-lease

(PR会自动更新)

总结

完整的工作流程可以概括为:先同步main分支,然后在新分支上开发,push代码,提交PR,最后使用rebase保持代码的新鲜度。

其他

你可以使用以下命令查看当前本地仓库所关联的远程仓库信息,以确保你不会错误地推送代码到错误的仓库。

 git remote -v

希望这些信息能帮助你顺利地为开源项目做出贡献!

标签: none

评论已关闭