From: Josh Boyer Date: Tue, 22 Sep 2015 19:10:42 GMT Subject: Re: Specifying N revisions after the initial commit Message-ID: In-Reply-To: <20150922214037.b6b48059f051fcd4060a5a85@domain007.com> On Tue, Sep 22, 2015 at 2:40 PM, Konstantin Khomoutov wrote: > On Tue, 22 Sep 2015 14:32:19 -0400 > Josh Boyer wrote: > >> Please CC me as I'm not subscribed. >> >> I was hoping someone could help me with the revision shorthand to get >> the commit sha of a commit N commits after the initial commit. > > What happens if right after the initial commit, there have been five > branches created -- with no common commits except for the initial one? > > That's the core limitation of the data model Git uses (and arguably any > other DVCS system): all commits form a directed acyclic graph. > The "directed" in that construct means that child commits contain a > link to their parent commit (or commits) but not vice-versa. Hm. It has been so long since I've looked at the underlying model and git has proven to be so flexible on such a variety of things that I guess I forgot it was constructed through a DAG. The --reverse parameter to git-log and git-rev-parse had left me hopeful. > Hence, given any particular commit, you're able to trace all of its > ancestry, but the reverse is not possible. That makes sense. I suppose I will have to resort to parsing output of git-rev-list or something. Thanks for the reminder. josh