存储用于API版本调用的git标记的最佳实践

问题描述 投票:1回答:1

我正在将API从svn切换到git,这已经产生了如何向用户存储和呈现API的版本信息的问题。以前我在标签结账时使用带有HeadURL关键字的svn关键字扩展来获取版本信息以提取分支或标签名称,并将其存储在文件中,以便稍后在调用/ version时进行读取。

我通过广泛的研究发现,git不提供与svn关键字扩展相当的功能,并且使用.gitattributes和过滤器的变通方法似乎很难获得自定义关键字替换的标记/分支信息。

但是提供版本信息的API是常态,我相信他们中的很多人都使用git进行版本控制。那么,对于我的API存储和呈现版本信息(标记或分支名称)的问题,什么是一个很好的替代方案呢?或者您可以提供另一种方法在结账时将分行/标签信息存储在文件中吗?

git svn api-design
1个回答
0
投票

API版本与提交哈希或标记不同。例如,您可以拥有API版本1,该版本对软件版本0 *,1.0,1.1,2.0和2.1有效,但不适用于3.0,后者切换到API版本2.后来,软件版本2.2同时支持API 1和API 2。

这意味着API版本不应由发布本身定义。更改API是一项单独的操作。从发布版本信息(标签或其他)到支持的API集的映射本质上是发布代码的一部分,因此基于发布的(某些文件集)的内容,而不是发布的外部号码。所以这里根本没有冲突:您只需根据需要更新内容,并在适当的时候进行发布。

© www.soinside.com 2019 - 2024. All rights reserved.