在我在分支之间来回切换的git存储库中,文件修改时间如ruby中的mtime
所示(或基于操作系统的修改时间度量,例如通过ls -l
)显示我上次更改分支的时间,而不是文件被修改的实际时间。
我理解Git存储所有文件的文件修改时间,但是如何显示实际的修改日期,例如来自红宝石的电话?
e.g。我看到我可以从命令行获取此信息:
git log -1 --format="%ad" -- path/to/file
但不确定最好的Ruby方法是做什么的。
答案 0 :(得分:1)
我相信这是不可能的;即git只存储提交时间,而不是修改时间。但是,您可能需要查看metastore,这是git的一个补充,可将此元数据存储在单独的文件中。
但是,由于提交时间足以满足您的需要,您可以直接从ruby运行命令;类似的东西:
%x(git log -1 --format='%ci' path/to/file)
或者您可以使用其中一个ruby git libraries。我自己从来没有使用过这些库,所以我不能保证它们中的任何一个。
编辑:添加了关于提交时间的部分,因为这足以满足OP的目的。