如何从git仓库中获取上次提交日期?

pdsfdshx  于 2022-12-10  发布在  Git
关注(0)|答案(6)|浏览(276)

我需要git中的最后一次提交日期。这意味着我的程序中的最新更新日期。
我用了命令:$git log -1但是这个命令会给予我本地仓库的日期。我需要的是远程仓库的日期。
我尝试了如下一些命令。

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

vxqlmq5t1#

以下命令将很有用:

git log -1 --format=%cd

这将打印一个文件的最新更改日期。-1显示一个日志条目(最近的),--format=%cd显示提交日期。有关选项的完整说明,请参阅git-log的文档。

pbgvytdp

pbgvytdp2#

获取上次提交日期:

你需要一个给定的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 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 pull s非常慢,而且你会在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

你的选择是北、南、东和“丹尼斯”。

8i9zcol2

8i9zcol23#

要从git仓库中获取上次提交日期,请使用long(Unix纪元时间戳)

*命令:git log -1 --format=%ct
*结果:1605103148
**注:**您可以访问git-log文档以获得有关这些选项得更详细说明.

tyg4sfes

tyg4sfes4#

虽然有点晚了,但下面介绍如何获取最新远程提交的UNIX时间戳:

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

odopli945#

  • git log -1* 会给予你合并id,作者和日期
  • git log -1 --format=%cd* 将给予如下输出
    2022年4月13日星期三15:32:54 +0530

我们可以将日期格式设置为:git日志-1 --漂亮='格式:%cd' --日期=格式:' %Y-%m-%d %H:%M:%S'
输出2022年4月13日15:32:54

juzqafwq

juzqafwq6#

另一个Linux的一行程序,获取UTC ISO 8601时间,格式为分钟:
TZ=utc date -d @$(git log -1 --format=%ct) --iso-8601=m
提供2022-12-07T10:01+00:00

相关问题