1

We have a huge repository which contains some very old commits that contain huge binary files. I would like to make the repo much more tiny, so I thought I could get rid of the first 200 commits. I saw strip removes all descendants, so it's not for this case.

What I'd like to achieve is like to ged rid of commits A and B, as if the repo's first commit would be C:

[A]->[B]->[C]->[D]----------->[G]-[H] \ ^ \->[E]-[F]----|

Is it common to do that (I never did :) ) and how would you achieve that?

Attila Fulop
  • 6,861
  • 2
  • 44
  • 50
  • Yes it's a duplicate, and the best solution from there is probably: `hg convert --config convert.hg.startrev=1234 ` – Attila Fulop Aug 04 '15 at 21:08
  • 1
    But it is important to note the big caveat in the original answer: "Caveat: The new repo will have completely new changeset IDs, i.e. it is in no way related to the original repo. **After creating the new repo every developer has to clone the new repo and delete their clones from the original repo.**" – msw Aug 04 '15 at 21:13
  • Yes that is true. Ironically that's what I'm just doing in this very moment :D – Attila Fulop Aug 04 '15 at 21:21

1 Answers1

0

Histedit extension allow to remove only selected changesets

Lazy Badger
  • 94,711
  • 9
  • 78
  • 110