2015-12-23 110 views
0

我有一个使用python 2.7开发的API。我有一些开发人员已经在使用它。我想将这个API迁移到python 3.4。 我不会再支持python 2.7 API了。Git - 分支或标签?

我的代码存储在位桶中。什么是最好的策略? 只需制作一个简单的分支,例如“python3.4”?

在主分支(python 2.7)上创建一个标签并启动一个新分支(python 3.4)?

回答

2

是的,分支是正确的。您可能希望修复Python 2分支中的错误,因此它应该是分支,而不是标签。标签用于发布。

我会命名Python 2分支python2并命名Python 3分支master。这样,更明显的是哪个分支处于活动状态。

+0

对于那些正在使用python 2.7的用户,他们如何克隆正确的分支?在这种情况下,就像你所建议的那样,“python2”分支。我需要远程跟踪python2分支吗?谢谢! –

+1

@PedroMagalhaes:克隆后只需'git checkout python2'。 –

0

也许,就用户而言,除了宣布对2.7 API的支持已经以最新版本(已经有一个标签)结束之外,您实际上并不需要做任何其他事情。不需要立即执行git操作。

(如果你想给用户一些新仍然支持2.7,那么割接之前多了一个“最后基于2.7版本”呼叫)。

更近的标记表示实际尽管在切入之前提交会对你的内部目的有用。切换到新的API是一个重大的变化,这可能值得标记一个标签,以便您可以轻松地引用此历史点。

您不必任何支持分支现在。这样做可能会向用户发出信号表明您打算支持该API,而您并未这​​么做。 (“哦,好吧,我看到一个python2分支;这是我可以期待修复的地方,尽管宣布不会有任何东西!”)稍后,如果您更改了自己的标记心神。

该分支可以在切入点之前完成,也可以从支持2.7 API的最后一个正式版本开始回溯:如果您无意支持2.7 API,则无需现在确定确切的分支点所有API。

如果您以后根据标签创建分支,git不会自动设置跟踪(也就是说,您不能自己设置git branch -t)。但是在这种情况下,你并不需要这样做,因为你不会重新支持python2支持分支,只有樱桃选择修复它。