Temos um projeto git que tem uma grande história.
Especificamente, no início do projeto havia muitos arquivos de recursos binários no projeto, eles agora foram removidos porque são recursos externos.
No entanto, o tamanho do nosso repositório é> 200 MB (o checkout total é atualmente de ~ 20 MB) devido a ter esses arquivos previamente confirmados.
O que gostaríamos de fazer é "recolher" o histórico de modo que o repositório pareça ter sido criado a partir de uma revisão posterior. Por exemplo
1-----2-----3-----4-----+---+---+
\ /
+-----+---+---+
- Repositório criado
- Grande conjunto de arquivos binários adicionados
- Grande conjunto de arquivos binários removidos
- Novo 'início' pretendido do repositório
Então, efetivamente, queremos perder o histórico do projeto antes de um certo ponto. Neste ponto, há apenas um branch, então não há complicação em tentar lidar com vários pontos de início, etc. No entanto, não queremos perder todo o histórico e iniciar um novo repositório com a versão atual.
Isso é possível ou estamos condenados a ter um repositório inchado para sempre?