java - 检索哈希数,git编译war

标签 java git spring-boot war

是否可以从已编译的 war 中检索哈希值提交? 我必须使用 springboot api 更改在生产服务器上工作的 war 文件。

(所有者是我们无法再联系的提供者)

有没有办法找出提交哈希号来克隆存储库? 非常感谢!

最佳答案

通常,当您构建一个 war(或 jar)文件时,您的 Git 提交的 id 不会(!)存储到 war(或 jar)文件中。 war(或 jar)文件只是一个包含 Java 类和一些附加元信息的存档。

如果我遇到你的情况,我会使用 WinRAR(或其他一些打包工具)打开 war 文件,然后按以下步骤进行:

0) 检查 build-info.properties

如果构建 WAR 文件的人使用了 [spring-boot-maven-plugin][1] 及其 build-info 目标,则可能有文件 META-INF\build-info.properties。它不会告诉您提交 ID,但至少会告诉您有关版本的附加信息。如果您在此处找到版本信息并且它也在 Git 存储库中,那么这很可能就是您的版本。

1) 查看 list 文件

list 文件 (/META-INF/MANIFEST.MF) 有时 contains information在包的版本上(如果它是在构建期间设置的)。

2) 查看其他文件

在同一个存档中,可能在根文件夹中,可能还有其他文本文件(例如自述文件)可以为您提供有关版本的信息

3) WAR 文件元数据

我会检查 WAR 文件的元数据(如果可能的话,在下载它的服务器上)。是否有关于文件创建时间的任何信息?这可能会提示您哪些提交(或多个提交)是您正在寻找的提交的候选者。

关于java - 检索哈希数,git编译war,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52485631/

相关文章:

java - 关于 MyBatis resultMaps 的澄清

mysql - Hibernate Spring Boot中如何实现IS-A关系?

java - 使用XPath进行XML解析时出现文件未找到异常

java - 为什么启用 G1 垃圾收集器时最大堆大小不正确?

java - 使用 Java 的 Selenium Webdriver ElementNotVisibleException

Git 重置为之前的提交

php - 如何仅对分支中已更改的文件进行 lint 或静态分析?

windows - 无法使用 git lfs 克隆存储库

java - 从 Android 上传照片到 Facebook

java - 问题: Sending and Receiving Data