Jonathan Nieder <jrnieder@xxxxxxxxx> writes: > John Passaro wrote: > >> I find myself fairly frequently doing something like "git log $(git >> merge-base A B)..C". > > Hm. Can you tell me more about the workflow / higher-level operation > where you do this? Yes indeed, that would be interesting to learn. I can think of reasons why "git log ^A ^B C" may be useful, but I do not think of a case in which "git log --not $(git merge-base A B) --not C" [*1*] would become useful. [Footnote] *1* As there can be more than one merge-base between A and B, the right way to write what John wanted to write is to do the above. A single "--not" says "until you see another --not, take all the positive one from the command line as negative and vice versa". You can also write it as "git log C --not $(git merge-base A B)".