对于git repo中的给定文件,我想查找修改文件的最后一次提交的SHA以及时间戳.
在命令行,使用git log查看特定文件路径的数据,例如
git log -n 1 path/to/file
Run Code Online (Sandbox Code Playgroud)
使用rubit的"git"gem我也可以这样做:
require 'git'
g = Git.open("/path/to/repo")
modified = g.log(1).object(relative/path/to/file).first.date
sha = g.log(1).object(relative/path/to/file).first.sha
Run Code Online (Sandbox Code Playgroud)
这很棒,但在循环很多路径时对我来说运行得太慢了.由于Rugged使用C库,我希望它会更快,但无法看到如何在粗糙的语法中构造正确的查询.有什么建议?