目前,我们正在使用一个标签上的每一个构建的主人,通过CI。这导致了很多标签(每天3-10)。好的一面是,这些提交很容易被人类阅读,显示版本(v.X.Y.ZZZ),它也显示在构建和部署该提交的.exe中,这使得在报告bug时很容易找到确切的提交--生成特定的.exe。
发布于 2017-09-11 18:55:46
实际上,因为git系统中的每个提交都已经有了一个散列,如果您只需要一个唯一的标识符来再现构建,或者标识您的分支的特定状态,那么在提交散列中就已经有了。很明显,您的CI系统已经知道提交哈希。所以从这个意义上说,所有这些标签都是一种浪费。
练习不好吗?我没见过会说这很糟糕的东西,我也想不出这会带来什么真正的问题,但这对我来说确实很不寻常。通常,标签是用于发布的,而标签是半标记的。只要你在每个标签上进行标记,它可能就不可怕了。假设您实际上部署了这些构建,那么通过标记而不是git提交来识别构建及其相关问题可能会更有用。
不过,你的用法似乎属于一个很大的范畴,我们称之为“个人偏好”。如果你一直这样做,我怀疑世界会被烧掉。这不是我的选择,但是如果你的构建管道没有被破坏,我不会建议将它“修复”到一些虚幻的状态-- git完美。
发布于 2023-05-02 20:23:08
很多事情都是可能的。但在我看来,使用命名空间来存储一个位(构建/不构建)是一种“设计味”。
通过命名空间,您必须不断地想出一个唯一的名称。也许是UUID?或者是第二次的时间戳?这是乏味的自动化和查看。(或者不是:你似乎对名字没意见。)
相反,您可以使用git-notes(1)注释提交,就像使用git-测试工具一样。
…如果您需要使用的任何工具都支持git(1)套件中相当利基的部分,那就是git-notes(1)。如果不是,git标签(1)毕竟是完全无处不在的;广泛的使用往往比完全适合使用。
否则,您可以存储所有提交传递的列表。
https://softwareengineering.stackexchange.com/questions/357199
复制相似问题