Home > Mobile >  Show all changes to all files in all commits since a specified one
Show all changes to all files in all commits since a specified one

Time:07-20

How do you get git to show all changes made to all files in all commits, since a specified commit (that might've been a few hundred commits ago)?

I can find how to show all changes to one file, or all changes in one commit, or a list of changed files, but I have not found any documentation on how to show the full diffs for all changes across an entire repository, in the order that they were made, since an arbitrary point in history. (I understand that the volume of output will be large.)

CodePudding user response:

tl;dr: You probably want git log -p --since=<date of the commit>.


git log -p will show all the changes in each commit. See Commit Formatting for full control over what is returned for each commit.

...since a specified commit

That's a little more complicated because Git history is not linear (use git log --graph to see the true history).

If you want all commits since by time, find the date of the commit and use --since.

If you want all commits since topologically pass git log a revision range. See Specifying Ranges for details, but usually git log <commit>.. is what you want.

See Commit Limiting for options to control which commits are shown.

...in the order that they were made

Reverse chronological order is the default for git log. See Commit Ordering for other possibilities.

For example...

time ---->

A - B - C - D - E - F [branch1]
         \
          I - J - K - L - M [branch2]

All the commits since D in time and in reverse chronological order is J - E - K - F - L - M.

All the commits since D topologically is E - F.

Up to you which one you want.

  •  Tags:  
  • git
  • Related