Search Git Commits Between Dates

By  on  

One of my weaknesses as a developer is relying on UIs to provide me the data I need.  It's not a fatal weakness but it does hamper me a bit.  One prime example is relying on GitHub's interface to review changes; git's command line provides the information needed with commands but the UI is just so much nicer.

I recently needed to trace back commits to find a problematic commit between a given date range.  You can use the following git command to list commits between two dates:

$ git log --after="2018-06-30" --before="2018-07-03" --oneline
636c0ff21 Add recordTelemetryEvent() helper to debugger util fixes #6529 (#6571)
94d5e0639 [Telemetry] Fixed telemetry import to point at devtools module using transform-mc.js (#6567)
990c52150 [Editor] get mode from editor (#6563)
2f990aa0e [flow] add types for Editor/index (#6568)
7f92836ba When replaying, fix resume button bug and show pause button when unpaused. (#6582)
1840902f9 [Breakpoint] use PureComponent (#6583)

Especially nice is the --oneline modifier to keep the commit list concise.

I'd guess that 90% of git developers simply branch, commit, and push -- not that there's anything wrong with that, but it's only about 2% of what git is capable of.  Using native tools and not UIs is a badge of honor in our business, so mastering the lessor known commands can speed up development and make you less reliant on outside apps!

Recent Features

  • By
    Regular Expressions for the Rest of Us

    Sooner or later you'll run across a regular expression. With their cryptic syntax, confusing documentation and massive learning curve, most developers settle for copying and pasting them from StackOverflow and hoping they work. But what if you could decode regular expressions and harness their power? In...

  • By
    JavaScript Promise API

    While synchronous code is easier to follow and debug, async is generally better for performance and flexibility. Why "hold up the show" when you can trigger numerous requests at once and then handle them when each is ready?  Promises are becoming a big part of the JavaScript world...

Incredible Demos

  • By
    QuickBoxes for Dojo

    Adding to my mental portfolio is important to me. First came MooTools, then jQuery, and now Dojo. I speak often with Peter Higgins of Dojo fame and decided it was time to step into his world. I chose a simple but useful plugin...

  • By
    Record Text Selections Using MooTools or jQuery AJAX

    One technique I'm seeing more and more these days (CNNSI.com, for example) is AJAX recording of selected text. It makes sense -- if you detect users selecting the terms over and over again, you can probably assume your visitors are searching that term on Google...

Discussion

  1. Ruturaj

    When is Firefox gonna come natively on GIT and not hg -> git ?

  2. I totally agree with your point that it is very difficult for a developer to think outside of UIs, therefore, we need to rely on UIs. When it comes to GitHub’s interface to update or change anything like if you search Git commits between Dates then it will be very difficult for you to search due to the UIs. There are so many developers who are still confused about how to search Git commits between selected date ranges.

    The information you shared in the article will be beneficial for the developers. By using the Git command you mentioned in the blog post, one can list or search the Git commits between two dates. It is necessary for a developer to have expertise in such type of commands so that he or she will be less reliable on outside apps. Keep sharing these kinds of information with us. Thank You!

Wrap your code in <pre class="{language}"></pre> tags, link to a GitHub gist, JSFiddle fiddle, or CodePen pen to embed!