1. 15

  2. 4

    Basically, this tool is a syntax sugar for what Git already provide, giving you a more human friendly syntax. You can use this tool to read code better, for example, run “gitq by Dan with useState” in facebook/react repo to see what he does for react hooks, or “gitq from 2019-02-15 to 2019-02-17” to see who break the build during the weekend,…

    1. 5

      Just a nit regarding presentation: in the gif screencasts, I found your prompt (?) confusing. It looks very unfamiliar to me (not your standard “$” kind of prompt), so I had trouble splitting/parsing it mentally. For a long while, I assumed this somehow requires emacs, and that this is probably some internal emacs prompt (I’m not an emacs user). Eventually, I started to understand that the “emacs” might just show the name of the current directory. But I’m still not 100% sure about it. Maybe you could consider running the screen capture with PS1='$ ' or something similar, to make it easier to understand?

      1. 1

        Interesting point, I was using zsh and didn’t notice about this non-standard aspect. Thank you so much, I’ll update these screen captures.

        1. 3

          You might also consider slowing down the casts (half speed at least, possibly more). I’ve found that it’s too fast to make out what is going on easily. I have no idea what the first GIF is demonstrating.

    2. 2

      This looks similar to Mercurial’s revsets:


      I think I like the revset syntax better. Syntaxes that look too much like natural languages soon turn awkward or don’t work exactly like you would expect a natural language to work.

      Is there a syntax spec for gitq somewhere?

      1. 2

        I thoght about revsets syntax before, my intend when building this was to have a similar syntax for similar usage, but you’re right, natural language syntax is too hard to parse (too many ambiguos) and sadly not flexible enough :D I might thinking about adding revsets like syntax.

        For now I don’t have any specs yet except what in the test.js file. :D

      2. 2

        Not to derail the post (thank you for the submission @huytd!), but see also tig.


        1. 1

          ah yes, I didn’t really use tig before because I think it’s too much for my need :D