I am trying to get the list of all commit ids after/since a certain commit id, is there a git command..?
git log --pretty=format:"%H" --since=2014-05-04 would print all the commit-ids since 2014-05-04, similarly is there a command that could print all the commit ids after a certain commit-id?
thanks Chris, yes I used the timestamp
m=`git show -s --format=%cD $COMMITID`
git log --pretty=format:"%H" --since="$m"
git log --pretty=format:"%H" 123456..
or more briefly
git rev-list 123456..
If you want that commit to be included as well, use 123456^..
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Chris,
May be I didn't put my question properly.
Example:
123456daskkl9
56787skjskdk8
adkasjdka6788
dkajsdklja76678
jkajskldal677889
If I try "git log --pretty=
format
:
"%H"
adkasjdka6788"
The out put is
adkasjdka6788
dkajsdklja76678
jkajskldal677889
Instead, what I am looking for is a command that would get the below output using adkasjdka6788 commit id.
123456daskkl9
56787skjskdk8
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Consider if your commit history looks like this:
May 6 F == HEAD / \ May 5 / E / / \ May 4 / / D / / May 3 C / | / May 2 | B |/ May 1 A
So what's the difference between C and F/HEAD here? C only has A as an ancestor, but F also has B, D, and E as its ancestors (and C as well). So if I say git log C..F, it is going to tell me about what these differences are -- that is, it will tell me about B, D, E, and F.
If I say --since=2014-05-03, this is a very different question. It would have told me about the entire history, but I have excluded the things before May 3. This means it will tell me about C, D, E, and F.
Without the --since, how would git know that you want it to list D but don't want it to list B? Even if you followed a shortest path, what that would get you is directly from C to F, with D and E omitted as well. The date is the *only* reason that B didn't get listed by --since, and this is very misleading.
If this is really really really what you want, it amounts to getting the timestamp of the commit and then using --since with that timestamp. As far as I can tell, there is no intrinsic support for that. This is probably a good thing, because what that tells you is misleading.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You can use:
git log --pretty=format:"%H" commit-id..HEAD
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
Atlassian Government Cloud has achieved FedRAMP Authorization at the Moderate level! Join our webinar to learn how you can accelerate mission success and move work forward faster in cloud, all while ensuring your critical data is secure.
Register NowOnline forums and learning are now in one easy-to-use experience.
By continuing, you accept the updated Community Terms of Use and acknowledge the Privacy Policy. Your public name, photo, and achievements may be publicly visible and available in search engines.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.