gpt4 book ai didi

java - 程序如何知道自己的 git SHA?

转载 作者:行者123 更新时间:2023-12-02 13:34:30 25 4
gpt4 key购买 nike

我知道可能没有解决方案,但我们正在构建一个进行一些数据处理的系统,并且在日志中我们希望存储用于生成数据的程序版本。我们正在使用 Java,以防万一。程序版本只不过是 git SHA。使用 SHA,我们可以跟踪哪个构建/提交用于生成数据。我们的程序如何确定它的 git SHA?有可能吗?欣赏您的想法。

一种可能的想法是使用一个脚本,在提交代码时,从提交消息中提取 git SHA,然后将其写入资源文件。该文件显然不会被 git 跟踪(即文件需要添加到 .gitignore)。在运行时,程序将从该文件读取 SHA。还有更好的选择吗?

我们真正想要避免的一件事是开发人员通过运行 git commit 意外提交代码直接而不是运行脚本。如果发生这种情况,资源文件中的 SHA 将不会更新,这将引入严重的错误。如何处理这个问题?

另一个问题是,当我们这样做 git commit -m "commit message" 时,git 不会吐出完整的 SHA,而是将其截断。我们怎样才能让 git 打印出完整的 SHA?

最佳答案

您可以将 Git SHA 存储为打包过程的一部分。显然,实现取决于您的构建系统,但一般来说,您可以将 SHA 写入属性文件并在运行时加载它。

关于java - 程序如何知道自己的 git SHA?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43076207/

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