【GIT】如何在GitHub上向一个开源项目贡献代码?

简介: 【GIT】如何在GitHub上向一个开源项目贡献代码?

如何在GitHub上向一个开源项目贡献代码

参考链接:https://www.bilibili.com/video/BV1WC4y1a76G/?p=1&t=175

一、fork目标仓库的代码

必须先fork别人的代码到自己仓库之后才能修改代码,不能直接修改别人的代码。

这样就fork到自己的仓库了。

二、克隆仓库到本地

  1. 选择https或者ssh其中一个命令复制
    推荐ssh,https克隆比较大的项目时候可能因为网络不稳定而克隆不下来。
    使用ssh克隆远程仓库需要预先配置ssh密钥,详情参考:https://blog.csdn.net/weixin_44624036/article/details/131500590
    设置ssh密钥之后,如果根据教程设置了密码,clone或者push项目的时候会让你输入一遍密码。

  1. 本地git bash中粘贴命令并运行
    选择项目存放的文件夹,在该文件夹下右键打开git bash,输入命令:
git clone git@github.com:zcongfly/Extended-SimGNN.git

  1. 进入项目文件夹,修改代码
    一般情况下,修改后新增的代码或者函数都需要为其添加测试用例,以验证代码的准确性和可用性。
    添加的测试用例在提交到GitHub远程仓库中时会自动执行。

三、提交代码

创建并切换到新的分支(可选)

  1. 项目下载下来后默认是在一个master分支,更推荐的做法是为你当前修改的代码新建一个功能分支,将修改后的项目提交到该功能分支。
  • 查看当前分支
git branch
  • 创建并切换新分支
    分支名是自定义的,一般以新增的功能命名,比如我对这个项目的修改就只是加上了一些注释,就命名为annotation
git checkout -b <新的分支名>

  1. 在新分支提交修改
  • 将当前文件夹下所有文件添加到暂存区
git add -A
  • 提交修改
    描述信息可以用中文,一般就是介绍本次提交都修改了哪些东西。
git commit -m '<描述信息>'

  1. push到远程仓库
  • push到远程仓库
git push
  • 创建并切换了新分支的话,会提示让push到特定分支并给出对应的命令,复制粘贴运行即可
git push --set-upstream origin <新的分支名>

出现类似上面的提示信息,说明push成功。

四、向原作者提交修改

此时重新打开GitHub,会看到网页多了一个Compare & pull request按钮,点击,按照提示操作,即可将修改的代码提交给原作者,意为“请求原作者把你修改的代码拿过去”,然后等原作者采纳就可以了。

下边的评论框中可以向原作者简单说明修改的内容等信息,填写完成后点击最下面的Create pull request提交即可。

目录
相关文章
|
19天前
|
人工智能 Linux 计算机视觉
GitHub 开源热搜!10.7k  star, MagicAnimate,让照片秒变动画短片!
MagicAnimate 是由新加坡国立大学与字节跳动团队开发的静态图像动画工具,基于视频扩散模型与时序注意力模块,可实现高保真一致动画。用户只需上传一张照片和动作视频/DensePose 数据,即可生成高质量动画,效率提升 50%。项目在 GitHub 上获得 11.1k 星,支持多 GPU 推理、模型替换及跨平台部署,适用于短视频创作、在线教育、营销广告等场景。其优势在于流畅度高、细节还原精准,是目前最强的人像动画技术之一。
|
2月前
|
JavaScript 前端开发 持续交付
实际工作中 Git Commit 代码提交规范是什么样的?
实际工作中 Git Commit 代码提交规范是什么样的?
100 7
|
2月前
|
网络安全 开发工具 git
Git仓库创建与代码上传指南
本教程介绍了将本地项目推送到远程Git仓库的完整流程,包括初始化本地仓库、添加和提交文件、创建远程仓库、关联远程地址及推送代码。同时,还提供了`.gitignore`配置、分支管理等可选步骤,并针对常见问题(如认证失败、分支不匹配、大文件处理及推送冲突)给出了解决方案。适合初学者快速上手Git版本控制。
|
3月前
|
存储 人工智能 项目管理
2025年GitHub平台上的十大开源MCP服务器汇总分析
本文深入解析了GitHub上十个代表性MCP(Model Context Protocol)服务器项目,探讨其在连接AI与现实世界中的关键作用。这些服务器实现了AI模型与应用程序、数据库、云存储、项目管理等工具的无缝交互,扩展了AI的应用边界。文中涵盖Airbnb、Supabase、AWS-S3、Kubernetes等领域的MCP实现方案,展示了AI在旅行规划、数据处理、云存储、容器编排等场景中的深度应用。未来,MCP技术将向标准化、安全性及行业定制化方向发展,为AI系统集成提供更强大的支持。
811 2
2025年GitHub平台上的十大开源MCP服务器汇总分析
|
1月前
|
开发工具 git 索引
如何使用Git的暂存区来管理代码更改?
如何使用Git的暂存区来管理代码更改?
194 0
|
1月前
|
网络协议 开发工具 git
解决 git 报错 “fatal: unable to access ‘https://github.com/.../.git‘: Recv failure Connection was rese
在使用 Git/Git小乌龟 进行代码管理的过程中,经常会遇到各种各样的问题,其中之一就是在执行 git clone 或 git pull 等操作时出现 “fatal: unable to access ‘https://github.com/…/.git’: Recv failure Connection was reset” 的报错。这个问题通常是由网络连接问题或代理设置不正确导致的。在我的个人使用经验中,我亲自尝试了四种方法,它们都能够有效地解决这个报错。个人比较推荐方法二。
500 0
|
2月前
|
JSON JavaScript API
MCP 实战:用配置与真实代码玩转 GitHub 集成
MCP 实战:用配置与真实代码玩转 GitHub 集成
858 4
|
3月前
|
人工智能 API 开发工具
GitHub官方开源MCP服务!GitHub MCP Server:无缝集成GitHub API,实现Git流程完全自动化
GitHub MCP Server是基于Model Context Protocol的服务器工具,提供与GitHub API的无缝集成,支持自动化处理问题、Pull Request和仓库管理等功能。
717 2
GitHub官方开源MCP服务!GitHub MCP Server:无缝集成GitHub API,实现Git流程完全自动化
|
3月前
|
文字识别 网络协议 开发工具
GitHub封锁?推荐5个国产的Git仓库替代平台
近日,GitHub对中国区IP的部分限制引发了广泛关注。未登录用户被拒,已登录用户功能受限,南北网络环境差异更显“内卷”。为应对这一挑战,本文推荐了多个国产Git平台:Gitee(码云)、GitCode(CSDN旗下)、CODING(腾讯系)、CodeUP(阿里云支持)及微信代码管理工具。这些平台功能全面、稳定性强,是开发者迁移项目的理想选择。通过同步代码、配置CI/CD流水线等简单步骤,可确保项目平稳过渡。此次事件提醒我们,掌握核心技能与支持国产平台同样重要!
785 11