对于糟糕的问题标题,我感到非常抱歉,但我会尝试更详细地解释一下自己:
我正在为我的软件项目使用 Git(但我猜在这种情况下特定软件并不重要)。与许多项目一样,我计划发布各种版本。当有发布时,我可能会为提交分配一个标签——例如“1.0”。时间流逝,代码被黑,最终发布了一个带有另一个标签的版本——这次是“2.0”。
有一天,我注意到一个严重的错误,它存在于 1.0 和 2.0 版本中,需要修复。为了让事情变得困难(也可能更现实),我不能只在当前的主干/主干中修复它并假设每个人都会使用它,因为 2.0 与 1.0 存在一些向后不兼容,人们很懒惰并且不要不想升级。
那么,为了支持这种行为,有什么好的方案:能够在旧版本中进行更改。git describe
由于命令(“ [latest tag]-[commits since the tag]-[current commit hash]
”)的输出,Git 似乎在某种程度上将标签等同于发布。那么,我可能无法避免完全使用标签。
我觉得标签和分支的组合是个好主意,但由于某种原因,我无法用这个来解决细节问题。