0

我有两个分支 master & development。我的想法是我在开发分支上工作,并且仅在版本号从 v1.0 到 v1.1 时才合并更改。我将修补程序应用于主分支仅用于错误。

每次更新版本时,我都会将开发合并为 master 和 tag master,并增加一个点发布。

我知道我可以使用

git reset --hard v1.0

效果很好。但是,在我需要对主分支应用修补程序的情况下,您是否认为最好将头移到该提交,然后从它分支,然后合并回重新标记到 v1.01 并重新推送。

这意味着代码可以在 v1.01 再次部署,而 v1.0 标记仍然完好无损?

4

1 回答 1

2

两个分支的设置听起来非常好。

请注意,将当前分支git reset --hard重置为给定的提交,丢弃所有较新的提交。- 这很可能不是你想要的。

对于主分支上的修补程序。你绝对应该让你的标签保持原样,并为固定代码引入一个新的次要版本。

git checkout master
#fix code
git commit -am 'fixed bug'
git tag $new_minor_version
git checkout develop
git merge master # optional, to apply the fix in develop, too

如果 master 是 v1.0 并且新的次要版本是 v1.0.1,那么第一个标签包含错误,而后者不再包含它。

只要您不打算积极支持多个版本(例如 1.* 分支和 2.* 分支),您就不需要更多的分支,一切都很好。:)

于 2013-05-01T13:13:04.823 回答