Como produzo todos os status git possíveis?

Fundo:

No momento, estamos usando o git para gerenciamento de código-fonte em um aplicativo Web em que estou trabalhando. Existe um editor e, portanto, também há uma interface da web para o git.

Um de nossos casos de uso é que as pessoas TAMBÉM podem gerenciar seus repositórios git a partir da linha de comando, para que a interface da web precise lidar com, de alguma forma, qualquer estado estranho em que ele encontre o repositório.

Pergunta, questão:

Para o teste, seria ótimo obter um repositório git com um arquivo em todos os estados possíveis, para que eu pudesse verificar se todas as condições possíveis são tratadas. Lendo"man git-status (1)" Contei 24 estados possíveis (sem contar ignorados) nos quais um arquivo pode estar.

Eu só descobri como criar 17 desses estados.

Aqui estão os códigos XY (consultestatus git), dos estados que não sei reproduzir.

D           M    deleted from index
C        [ MD]   copied in index
D           D    unmerged, both deleted
A           U    unmerged, added by us
U           A    unmerged, added by them

Existe umessência no github com um script ruby que cria todos os estados que eu já sei reproduzir, adoraria fazer isso completo.

questionAnswers(2)

yourAnswerToTheQuestion