Is git range-diff and different than git log --patch A..B (or is it 3 dots?)?
Most importantly: Directory rename detection!
This is a huge help especially in the earlier stages of a project where I can't seem to settle on package names. And add the that the horribly deep directory hierarchies that come with Java src/main/com/company/team/product/factories/impl etc etc.
It looks like range-diff is a little bit different than git log --patch A...B . It say it's "[...] a tool for comparing two sequences of commits, including changes to their order, commit messages, and the actual content changes they introduce."
So it's a bit like comparing two separate git log --patch outputs for differences/similarities, and it does it in a semantic way (it knows the difference between commit messages, content changes, etc.). The log --patch would just give you every commit that differs at all from either branch, and all their changes.
I could see this being a very common part of my workflow potentially. Off the top of my head I think I'll be using it to verify that a rebase -i did the actual changes that I meant it to, and no more.
(just for clarity: two dots, git log --patch A..B, would just give you the log of commits with changes in that single range, three dots does the same for commits in either A or B but not both)
> Quick quiz: if git tag -l is shorthand for git tag --list, then what does git branch -l do? If you thought, “surely it doesn’t list all branches”, then congratulations: you’re a veteran Git user!
Is git range-diff and different than git log --patch A..B (or is it 3 dots?)?
Most importantly: Directory rename detection!
This is a huge help especially in the earlier stages of a project where I can't seem to settle on package names. And add the that the horribly deep directory hierarchies that come with Java src/main/com/company/team/product/factories/impl etc etc.