git的branch以及merge

用惯了svn,对于git的merge和branch始终不太会用,srs在github上后开始用git,用了一年多才慢慢搞清楚一点点东西。

git的merge很靠谱,不用每次都手工merge,必须使用branch的merge,否则会很慢。

不过merge需要搞清楚那些branch,以及merge,还有commit之类,需要花些时间。

一般的惯例是master+release+develop,或者加其他的branch,srs没有那么大,就把master和develop合并了。

也就是srs的branch只有develop(master)和release。

就算只有develop+release,也有merge,release上因为只fix bug,所以改动会小,如果有bug修改可以merge到develop。标准的操作是从release打hotfix的branch,然后fix后merge到release和develop,或者直接从release merge到develop也可以。

有时候有临时的feature,悬而未决的,可以新开branch。但是这些branch都必须和develop保持merge。等完全确定后再merge回develop。


这个图中,srs-librtmp有一些修改,然后从master merge。

1.0release上有bug fix,还未有merge到master,接下来就是master merge 1.0release的bug fix。

在master分支上,使用git merge --no-ff 1.0release之后的图如下:


也就是说:

1. 1.release => master

2. master => srs-librtmp

等srs-librtmp分支有结果了:

3. srs-librtmp => master

这种是衍生式的分布式开发,都是不断分支和合并往前走。

git还有其他的很多用法,确实很灵活,譬如加入多个remote可以推送到不同的git服务器。

值得好好学学,门槛确实比svn高很多,这篇文章写得很好,值得好好读读:http://www.open-open.com/lib/view/open1328070090108.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

winlinvip

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值