3 ms·
Technically, they are: you erased commits from your history. You created a single new commit with equivalent contents, but the timeline has been altered, and if
by spiffytech 4y ago
Technically, they are: you erased commits from your history. You created a single new commit with equivalent contents, but the timeline has been altered, and if you previously pushed to your remote you now have to force push because the remote remembers a version of history that no longer happened.
Fossil heavily discourages (outright forbids?) this kind of stuff.
- dahart 4y agoTechnically, commits are not erased after squash/rebase. They remain there and available to use unless they are not reachable from a named branch for like 90 days. Technically, the timeline is not altered, but the commit sequence is altered. Git does not offer an immutable timeline, and thus squash & rebase cannot break it. Fossil does try to discourage rewrites, but does offer ‘purge’ which is a rewrite, because of course, forbidding all rewrites is impractical.