To je přece jasné. split() rozdělí řetězec na 1 až n částí, tudíž IndexError při volání split()[1] znamená, že řetězec, který chceš rozdělit, neobsahuje podřetězec, který mu posíláš jako parametr 'separator'. Tzn. ten 'file' neobsahuje řetězec uložený 'repo', přestože jsi z nějakého důvodu přesvědčen, že ho obsahuje.