对于GitHub的浅显理解-以TensorFlow项目为例

本身并没有大型开源项目的实际参与经验,所以真的只是浅显理解

如有问题,敬请指正。

TensorFlow项目中,1个release对应1个tag,1个tag对应1个branch里的1个commit,1个pull request可能包含0个、1个或者多个commits

tag和release

项目的开发者会不断地commit,累积到一定程度,形成一个tag,相当于是一个里程碑,标记一下开发到哪了
某些tag会变成release,相当于这个tag对应的文件可以正式发布了


branch

开发过程中,可能会形成分支

有的项目里,一个release或者一个tag就是对应一个分支,比如TensorFlow和后期的Keras

TensorFlow项目发布一个版本,就分出去一个分支,这样就可以持续维护这个发布的版本,然后master继续向前

比如发布了一个2.6的版本(同时分支),后面发现2.6有bug,就可以在2.6的分支上维护,形成新的版本,比如2.6.1

有的项目里,release或者tag都在master分支里,比如caffe和前期的keras
 

pull request

在开发过程中,可能有一些不是项目团队的贡献者,也想开发或者也想改点东西,于是有了pull request,相当于给那些项目外的开发者,把他们开发的成果合并进来

一个常见的流程

先 fork 别人的项目,相当于拷贝一份,不会有人直接让你改修原仓库

clone 到本地分支,做一些修改,比如bug fix

发起 pull request 给原项目,让他看到你修改的bug

原项目开发人员 review 这个 bug,如果是正确的话,就会 merge 到他自己的项目中

只有成功merge的pull request中的commits才能在原项目中查到

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值