What benefit is there to use --grep-reflog?

2019-05-06 15:50发布

问题:

I noticed in the documentation you can specify the parameter --grep-reflog

--grep-reflog=<pattern>

Limit the commits output to ones with reflog entries that match the specified pattern (regular expression). With more than one --grep-reflog, commits whose reflog message matches any of the given patterns are chosen. It is an error to use this option unless --walk-reflogs is in use.

I kind of wanted clarification on how this is different from --grep. What benefit is there for looking through actions made through the git reflogs? Is it just so you know what is available in git reflog so if you wanted to access it, you can?

回答1:

--grep only search applies to commits reachable from a branch head. You would use --grep-reflog to search instead commits that are accessible from a reflog entry, which might not otherwise be accessible from an existing branch. I think this is useful primarily for error recovery (finding a commit that is otherwise lost so that you can recover it).