1
在一个git存储库中,我可以在分支之间来回切换,文件修改时间如ruby中的mtime
(或基于操作系统的修改度量时间,例如通过ls -l
)显示上次更改分支的时间,而不是文件修改的实际时间。在git仓库中获取正确的文件修改时间(在ruby中)
我知道Git会为所有文件存储文件修改时间,但是如何获取显示的实际修改日期,例如,从一个红宝石电话?
例如我知道我可以通过命令行得到这样的:
git log -1 --format="%ad" -- path/to/file
,但不知道什么是最好的红宝石的方式做到这一点。
不确定为什么提交时间不会是文件的最后修改时间。因此,访问上次提交的文件对我的情况会很好。不知道为什么我需要metastore。 – cboettig 2013-02-26 22:32:34
提交时间本身就是提交,与提交树的任何内容无关。 – jthill 2013-02-26 23:18:25
@cboettig啊,如果提交时间足够了,你可以通过查看文件的第一个日志条目来检索它。哦...现在我看到你已经用git log例子编辑了你的帖子。要从ruby访问它,你可以直接运行命令;像'%x(git log -1 --format ='%ci'path/to/file)',或者使用其中一个[ruby git库](https://www.ruby-toolbox.com/categories/git_Tools)。我从来没有使用过这些库,所以我不能真正保证它们中的任何一个。 – Steinar 2013-02-26 23:21:03