如何在给定 unix 提交时间戳的情况下从 git 获取提交?

jos*_*atv 2 git

由于原因,我的应用程序中的“版本”是时间戳(用 生成git show --format=%ct)。所以错误报告说这vApp-<timestamp>已经被破坏了。

我将如何反转操作并使用时间戳从时间戳中获取提交哈希git

我可以运行git log --date=unix然后依靠less搜索时间戳,但我希望 git 有更多“内置”的东西。

这与所谓的重复不同,因为我不想要“特定日期的所有提交”,我想要一个给定提交时间戳的提交。

TTT*_*TTT 5

假设你的 Unix 时间戳是 1635020939,那么应该这样做:

git log --date=unix --before=1635020939 --after=1635020939 --pretty=format:"%h"
Run Code Online (Sandbox Code Playgroud)

请注意,Git 仅存储 1 秒分辨率的时间戳,因此不能保证您仅获得 1 个提交 ID。如果多个提交具有相同的提交者日期时间戳,则它们都将被返回。