前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >GitHub简介、仓库的创建与维护

GitHub简介、仓库的创建与维护

作者头像
星哥玩云
发布2022-07-24 11:09:55
5940
发布2022-07-24 11:09:55
举报
文章被收录于专栏:开源部署开源部署

前面的文章介绍了Git的基本概念和用法,本文则是基于GitHub的一个实践介绍,主要内容有:

  • GitHub简介
  • 个人与组织
  • 仓库的创建与维护
  • Fork与pull request
  • 小结

GitHub简介

  GitHub是一个Git的远程代码托管平台,它除了提供代码托管外,还提供了如问题发布、pull request、报表统计等功能,下图为EFCore项目的贡献者统计信息:

  GitHub提供了一整套远程协作的解决方案,所以是开源项目的首选平台,许多知名项目都托管在GitHub上。   GitHub可以免费的创建自己的开源代码仓库,同时有付费服务,如私有仓库、GitHub的企业解决方案等。

个人与组织

  GitHub中提供了个人仓库和组织仓库,分别适合个人开源项目以及组织开源项目。   个人仓库主页:

  组织仓库首页:

  创建组织:

  填写组织信息:  

仓库的创建与维护

  1.创建一个仓库(个人和团队仓库创建类似,下图是团队仓库)

  2. 仓库的维护:   针对每一个仓库,GitHub提供了代码管理(Code)、问题管理(Issues)、拉请求(Pull Request)、项目管理(Projects)、百科(Wiki)、统计(Insights)、仓库设置(Settings)功能,通过这些功能可以对代码仓库进行维护:

Fork与Pull request

  Fork和Pull request是GitHub上完成代码共享的核心功能,下面就介绍如何使用Fork和Pull Request完成代码贡献:   1. 将贡献目标仓库Fork到自己的仓库中:

  2. 获取Fork后的仓库,获取并对代码进行修改最后推送到远程分支(直接使用master分支):

  修改代码后将修改的内容推到远程仓库:

  注:更多使用Git的内容参考:《好代码是管出来的——使用Git来管理源代码》以及《好代码是管出来的——Git的分支工作流与Pull Request》。

  3. 发起Pull Request:

  创建新的pull request将会显示以下信息(代码由SelimTeam仓库合并到yqszt的仓库、代码是可合并的以及代码差异信息):

   当点击“Create Pull Request”按钮后,该请求将会被创建。

   4. 处理Pull Request:    yqszt/MyBlog库拥有者,可以在pull request选项卡中看到相应的信息并进行合并:

  文件差异:

  合并Pull Request:

  合并结果:

小结 

  本文介绍了如何使用GitHub来个人/团队代码仓库,对于一个GitHub仓库来说除了提供基础的代码版本管理功能以外还提供了问题管理、项目管理、百科、拉请求、数据统计等功能,仓库的拥有者(开发者)可以使用GitHub进行项目管理、代码管理,还可以将相关知识通过百科进行发布,以便于项目的受益者、贡献者能够快速获得项目信息,而贡献者除了可以通过Wiki获取信息外,还可以Issue、Pull Request对项目提出疑问或进行贡献,拥有者和贡献者所有的沟通都可以通过Github来完成。   另外Github的fork与pull request实际上就是上一篇文章中提到的“集成管理者工作流”的实现,其中在对pull request的代码进行合并时,实际上还强制进行了代码审查,这种工作流模式即适合本地的开发团队,也适合开发人员来自世界各地的开源项目。   从这些方面看来Github不再是一个简单的Git远程仓库托管平台,而是一个分布式的软件开发管理解决方案。

  PS:Github被微软收购,今后Github又会与.Net生态圈擦出什么样的火花?拭目以待。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • GitHub简介
  • 个人与组织
  • 仓库的创建与维护
  • Fork与Pull request
  • 小结 
相关产品与服务
项目管理
CODING 项目管理(CODING Project Management,CODING-PM)工具包含迭代管理、需求管理、任务管理、缺陷管理、文件/wiki 等功能,适用于研发团队进行项目管理或敏捷开发实践。结合敏捷研发理念,帮助您对产品进行迭代规划,让每个迭代中的需求、任务、缺陷无障碍沟通流转, 让项目开发过程风险可控,达到可持续性快速迭代。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档