Como o sistema de controle de revisão restaura a revisão?

Minha pergunta é mais geral do que declarada no título.

Eu sei que o controle de versão de origem armazena informações apenas sobre as diferenças. Pelo que entendi, o mesmo acontece com a Wikipedia, e o mesmo acontece com o github.

Mas todos eles têm capacidade de mostrar todo o arquivo com uma revisão particular. Eles restauram de forma incremental da primeira revisão para uma específica?

E outra pergunta. Se eles armazenam diferenças apenas, como eles os mostram em ui com contexto (pouco texto antes e depois das mudanças).

EDITAR: O github armazena instantâneos inteiros em vez de deltas

questionAnswers(3)

yourAnswerToTheQuestion