之前理解是 branch , 但是有个朋友说应该用 tag , 但是他之前用 svn 比较多。所以不知道信谁的
之前理解是 branch , 但是有个朋友说应该用 tag , 但是他之前用 svn 比较多。所以不知道信谁的
|
paradisloverNov 18, 2015
1
建一个 release 分支,每次发布打上 tag
|
|
yellowV2exNov 18, 2015
2
正常来说版本应该是用 tag 表示一个存档或者 release 之类,因为 branch 大多是比如你要做一个双 11 专版之类的才用,意义上来说 branch 是分支
|
|
mrgeneralNov 18, 2015
3
每次发布版本我用的是 branch ,给我的感觉 tag 就是一个标签而已。😓
|
|
restranNov 18, 2015
4
赞同 paradislover ,看到很多项目都是会在每个版本打上 tag
|
|
proudzhuNov 18, 2015
5
如果还要更新老版本(打安全补丁之类的),用 branch ,否则 tag 就行了
|
|
paradisloverNov 18, 2015
6
可以参考 git flow ,有自己的标准就行
http://nvie.com/posts/a-successful-git-branching-model/ |
|
msg7086Nov 18, 2015
7
branch+tag 咯
比如你一个产品,发布了 1.1 版本,那么这个分支就打上 1.1 ,然后 fix 都在这个分支上做,要发布 1.1.2 的时候就在 1.1 分支上打 1.1.2 的 tag 就行了。然后这个分支继续维护,以后发 1.1.5 就再打一个 tag 。 然后 mainline 分支就给 new features ,发布的时候分叉出 1.2 分支然后继续维护。 你可以参考一下 Rails 项目的分支,就是典型的 branch+tag 。 |
|
mozokovNov 18, 2015
8
gitflow +1 ,一般是 master 出 release 分支,然后最终发布时, release 分支合并回 develop 和 master ,然后打版本号的 tag
|
|
pythonerNov 18, 2015
9
同意楼上
|
|
yyfearthNov 18, 2015
10
最终 release 的版本应该是不变的 所以是 tag
而版本(至少是大版本)本身应该是一个 branch 因为你会为这个版本更新 branch 是一个可以更新代码的分支 (一条时间线)对应一个产品线(同一个产品而言就是大版本) 而 tag 是不应该变化的某一个 commit (一个时间点)对应一次 Release |
|
youggNov 18, 2015
11
|
|
cwekNov 18, 2015
12
发布版本用 tag
开发分支用 branch |
|
fengyqfNov 18, 2015
13
赞同 @cwek
发布版本用 tag 开发分支用 branch ------------------------------ 公共仓库(或说是集中仓库)里,最好 tag 吧。用 branch 就死在那里了,一大堆不再维护的 branch 丢在那里,不太美观。 开发人员的本地版本库,随便吧,爱怎么搞都行,反正不推到公共仓库里 |
|
DingHaoNov 18, 2015
14
发布版本用 tag
开发分支用 branch |
|
julyclydeNov 18, 2015
15
显然是 tag
tag 是一个静态概念,而 branch 是动态的,可以往 branch 里继续 commit 内容,而它还是叫这个 branchname ,不符合“发布”的概念 |
|
janxinNov 18, 2015
16
目前是 master 分支上直接打 Tag 做发布版本...Bug 通常会快速修复发布,所以会跟随 master 分支前进
|
|
happypy1Nov 18, 2015
17
tag 不就是为了标记版本用的吗?
不过,不管是新建 branch 还是 tag ,在 git 里面,本质上其实只是指针的变化。。 |
|
pathletboyNov 18, 2015
18
当然是 tag , branch 随时可开。比如你打了 1.0 的 tag ,然后发现要在该版本上修复 BUG ,直接在该 tag 所在的 commit 上创建 branch 进行修复,修复完发布并合并到 master 。
|
|
typcnNov 18, 2015
19
如果你在开发 Chrome ,用 tag 合适些,滚动更新嘛。
如果你在开发 Windows ,那 branch 合适,因为每次更新变化都很大,而且老版本还要继续更新维护,当然,打补丁修 bug 什么的还是 tag 。 如果你在开发 Parallels Desktop ,那你用 branch 或者 tag 都可以,因为经常会出新的大版本,出了新版本老版本又不维护了,新版本再收一次费。 (玩笑 |
|
18ac0877Nov 18, 2015
20
gitflow +1
使用 gitflow 省事多了, git 太灵活了,反而搞的太乱 |
|
iburuNov 18, 2015
21
恩
|
|
22
@paradislover 恩 这个办法好 以前的项目 我决定就这么干
@julyclyde 懂了 谢谢 看来之前是搞错了 原来是有静态和动态的区别的。 @18ac0877 @timwu 之前是看过一次 gitflow 的, 但是当时觉得每个人都装一个这个很麻烦,看来有必要用起来。 给刚接触的同事用 也很比较合适。 |
|
feuvanNov 18, 2015
24
feature branch
release tag |
|
jesse_luoNov 18, 2015
25
发布分支上打 tag ,但发布前是在预发布分支上的
|
|
27
|
|
wizardforcelNov 19, 2015 via Android
28
比如发布了 1.8 你不打算更新 1.7 了 就用 tag
发布了 2.0 你还打算更新 1.x 就用 branch |