如何从git存储库中获取最后提交日期



我需要最后一次提交日期,单位是git。这意味着我的程序的最新更新日期。

我使用了命令:$git log -1,但此命令将提供本地存储库中的日期。相反,我需要来自远程存储库的日期。

我试了一些命令如下。

git log -n 1 origin/Sprint-6.
git rev-parse --verify HEAD

获取最后提交日期:

你想要";给定git用户和给定分支的git项目的存储库范围内的最后提交日期。例如,当您访问回购并转到commits -> master时,日期显示在顶部,例如:

https://github.com/sentientmachine/TeslaAverageGainByMonthWeekDay/commits/master

使用终端获取git中的最后一个本地提交日期

使用git help log获取有关传递给--format的格式代码的更多信息,以告诉git log要获取哪种数据。

最后提交日期(以git:为单位)

git log -1 --format="%at" | xargs -I{} date -d @{} +%Y/%m/%d_%H:%M:%S
#prints 2018/07/18 07:40:52

但正如您所指出的,您必须在执行最后一次提交的机器上运行该命令。如果上次提交日期是在另一台计算机上执行的,则上述命令仅报告本地上次提交。。。因此:

或整个存储库:获取最后一个git提交日期

与上面相同,但先做一个数字拉动

git pull; 
git log -1 --format="%at" | xargs -I{} date -d @{} +%Y/%m/%d_%H:%M:%S
#prints 2018/07/18 09:15:10

或者使用JSON API:

git pulls非常慢,而且你要用繁重的操作来敲打GitHub。只需查询GitHub rest api:

#assuming you're using github and your project URL is visible to public:
# https://github.com/yourusername/your_repo_name
#then do:
curl https://api.github.com/repos/yourusername/your_repo_name/commits/master

这会给你一个充满json的屏幕,所以给它发送你最喜欢的json解析器,并获得名为date:的字段

curl https://api.github.com/repos/<your_name>/<your_repo>/commits/master 2>&1 | 
grep '"date"' | tail -n 1
#prints "date": "2019-06-05T14:38:19Z"

从下面的评论中,gedge对咒语进行了方便的改进:

git log -1 --date=format:"%Y/%m/%d %T" --format="%ad"
2019/11/13 15:25:44

或者更简单:(https://git-scm.com/docs/git-log/1.8.0)

git --no-pager log -1 --format="%ai"
2019-12-13 09:08:38 -0500

你的选择是北、南、东和";丹尼斯";。

从git存储库中获取最后一个提交日期(Unix epoch时间戳)

  • 命令:git log -1 --format=%ct
  • 结果:1605103148

注意:您可以访问git日志文档以获得选项的更详细描述。

git log-1将为您提供合并id、作者和日期

git log-1--format=%cd将给出如下的输出

2022年4月13日星期三15:32:54+0530

我们可以将日期设置为以下格式:git log-1--漂亮='格式:%cd'--日期=格式:'%Y-%m-%d%H:%m:%S'

输出2022-04-13 15:32:54

Linux的另一个oneliner,将UTC ISO 8601时间格式化为分钟:

TZ=utc date -d @$(git log -1 --format=%ct) --iso-8601=m

提供2022-12-07T10:01+00:00

迟到了,但以下是如何获得最新远程提交的UNIX时间戳:

git log -1 --date=raw origin/master | grep ^Date | tr -s ' ' | cut -d ' ' -f2

使用git版本2.39.2.

当我用showSignature = true设置我的~/.gitconfig时,执行git log -1 --format=%cI将另外包括提交签名信息,例如

Good "git" signature for abdull@example.com with RSA key SHA256:abcd
2023-04-14T20:02:23+02:00

要删除提交签名信息,请添加--no-show-signature标志,例如git log --no-show-signature -1 --format=%cI:

2023-04-14T20:02:23+02:00

相关内容

  • 没有找到相关文章

最新更新