gpt4 book ai didi

如果工作区不干净,Git 命令获取带有 "-dirty"后缀的 HEAD SHA1

转载 作者:行者123 更新时间:2023-12-02 11:44:29 32 4
gpt4 key购买 nike

我正在努力将版本号添加到构建过程中。对于在开发人员计算机上构建的版本,我想知道工作区是否包含可能已包含在构建中的更改,并在 SHA1 上添加后缀 -dirty

例如:

c2bc0d223739c841c5e810c6c439562aa9d67f5f
c2bc0d223739c841c5e810c6c439562aa9d67f5f-dirty

第一个表格可以通过以下方式获得:

git rev-parse HEAD

但是,当工作区脏时,我无法弄清楚如何附加 -dirty 后缀。 git describe 提供了此功能,但仅限于标签名称。我们并不真正使用标签(最后一次是在 400 次左右的修订前),而且它们并不像 SHA1 那样具有决定性。

这可以通过单个命令完成吗?还是我需要编写一些 bash 脚本?

最佳答案

您可以将 --match 与永远不会匹配的内容一起使用,以强制描述不匹配任何标签。这有点黑客,但它有效:

git describe --match=NeVeRmAtCh --always --abbrev=40 --dirty

关于如果工作区不干净,Git 命令获取带有 "-dirty"后缀的 HEAD SHA1,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21017300/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com