List Recent git Commits from Command Line

By  on  

GitHub is an amazing service which brings the boring, sometimes difficult git command line tool to life.  Oftentimes instead of futzing with the command line I'll simply bring up GitHub and find what I need.  In the year 2016, however, I'm trying to break away from GUI crutches and learn more low level stuff.

One task I've been using GitHub for is a retrieving a list of recent commits to a repo -- especially useful at this type of year when I (and many others) were wasting away on vacation over the holidays.  I found a useful command for listing commits newest to oldest so on commandlinefu:

git log --oneline | nl -v0 | sed 's/^ \+/&HEAD~/'

That command will render a listing with the latest commits first and original commit last:

0	b0d9243 Merge pull request #119 from awalGarg/master
1	f0b7b87 Merge pull request #189 from delapuente/proxify-render-store
2	973476a Add proxy to images as well
3	986e9fe Merge pull request #188 from delapuente/proxify-render-store
4	7f7ae51 Adding proxy to allow mixed content

...

401	2813e25 Update README.md
402	1ec78c5 Create README.md
403	c2c95db Initial commit

Of course typing this each time would be a nightmare to remember so a custom command or alias would be in order!

Recent Features

Incredible Demos

  • By
    Create Twitter-Style Dropdowns Using jQuery

    Twitter does some great stuff with JavaScript. What I really appreciate about what they do is that there aren't any epic JS functionalities -- they're all simple touches. One of those simple touches is the "Login" dropdown on their homepage. I've taken...

  • By
    PHP / MooTools 1.2 Accordion Helper

    The MooTools Accordion plugin seems to be the plugin that people seem to have the most problems with. It's an awesome plugin, so I can see why so many people want to use it, but I think that may be part of the problem.

Discussion

  1. Vladimir

    …or can simply use command “tig”. =)

  2. slash3b
    git log - - oneline - number of commits
  3. Chris McCoy

    nice one ;)

    here are some more handy git commands i have put together

    https://gist.github.com/chrismccoy/8775224

  4. We were once asked to note down what we did the whole day long.
    Defining an alias like:

    git config --global alias.today ‘shortlog --since=”1am” --no-merges’
    

    and then invoking

    git today
    

    eased that task :-)
    (It lists all commits since a.m. sorted by author and excludes possible merge requests thereby)

  5. Even more quickly and easily:

    gem install git-smart
    git smart-log
    
  6. I have an alias that lets me quickly look at the last 20 commits; use it all the time. In my .zshrc:

    gso='git log --oneline -20 --decorate'
    

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