Re: Searching all git objects
- From
- Tarmigan <tarmigan+git@gmail.com>
- Date
- Jun 25, 2008, 23:32 UTC
- Message-ID
- <905315640806251632m416a2406x301b857ec7faf09d@mail.gmail.com>
- In-Reply-To
- <20080625231742.GT11793@spearce.org>
On Wed, Jun 25, 2008 at 4:17 PM, Shawn O. Pearce <spearce@spearce.org> wrote:
Show 19 quoted lines
> "Sam G." <ceptorial@comcast.net> wrote: >> We recently had a developer make a large commit (mostly centered >> around one file) which she believed she properly pushed to a remote >> repository last week, but looking at both her repository and the >> remote repository, that commit is now nowhere to be found. If somehow >> the master branch she was working on in her repository has lost the >> reference to the commit through perhaps some errant rebasing, then >> perhaps an object containing the commit (or an object containing the >> file in that commit) still exists somewhere inside her .git/objects >> directory? We haven't done any git-gc recently. If so, how can I >> search through every single git object in her objects directory, >> searching for perhaps a specific part of the commit string, a line in >> the code or the filename of the file which was changed? Any help with >> this would be greatly appreciated. Thanks! > > Odds are it is in her HEAD reflog. You can look for it with > `git log -g`. If you know some part of the commit message you > may be able to filter it down with `git log -g --grep=X` or part > of the change with `git log -g -SX`.
If it helps, I like viewing the reflog with gitk. Like this: gitk $(git log -g --pretty=format:%H)
Is there a shorter way to do this with gitk? It would be awesome to have `gitk -g` .
-Tarmigan