Join the discussion
Write your take first — we'll ask for email only when you're ready to publish.
- Hacker News
- This tool really helped when I was migrating code across repositories. Thanks a lot!by sleepytoken
- The same here! Merged several repos into monorepo are retained full history!by pulse7
- Finding this usefull on migration. But I am puzzled when the migration has changed the file names and put the files on a new path, especially copying the files into a separate folder (non git) and the creating the version controlled folder which serves as the final codebaseby thuruv
- I'm not a git user (it's true, I'm not a professional dev and use fossil for my pet projects) so honest question: why would you want to rewrite your history?by ifh-hn
- - Because the history actually represents causality and not wall clock time, and a change belongs logically and semantically into some other changeset.
- Because you want to restructure the project for the whole history, prior to merging several projects.
by 1718627440 - Splitting subfolder into separate repo is full history rewrite. Changing commit message or commit tree is full history rewrite. Also, if you maintain local changes, you want your rebase onto vendor be super easy, meaning you want to groom your history into nice set of changes, not "reverted: reverted: really fix bug #123 for real" tangle. Rebase itself is a history rewrite.by 112233
- Personality have needed for the following reasons (when wanting to preserve history): removing personal info, removing sensitive keys/passwords that were accidently committed a long time ago, splitting a repo. There's lots of use casesby arnorhs
- One use case: you adopted a (new?) formatter, now tracking the evolution of a line/its vicinity is a lot more difficult past that. So you apply the formatter to every commit since the beginning. Literally it's not the true history of what the code looked like, but semantically it is, and it's more useful.by andreareina
- By Elijah Newren, author of Git's newer mergeort merge algorithm. ("ort" or "ostensibly recursive's twin" replaced the older recursive merge algorithm.)by wincent