Como dividir um repositório git e seguir renomeações de diretório?

Eu atualmente tenho um grande repositório git que contém muitos projetos, cada um em seu próprio subdiretório. Eu preciso dividi-lo em repositórios individuais, cada projeto em seu próprio repositório.

eu tenteigit filter-branch --prune-empty --subdirectory-filter PROJECT master

No entanto, muitos diretórios do projeto passaram por várias renomeações em suas vidas, egit filter-branch não segue renomeações, então efetivamente o repositório extraído não possui nenhum histórico antes do último renomeação.

Como posso efetivamente extrair um subdiretório de um grande repositório do git e seguir todos os nomes de novo diretório para o passado?

questionAnswers(3)

yourAnswerToTheQuestion