Só uma ressalva com relação ao começo do texto: da forma que foi escrito, passa a impressão de que antes não existia nada, tudo era feito na mão e então surgiu o Git e o GitHub. Mas isso não é verdade.
Sistemas de controle de versão existem há muito tempo, os mais antigos remontam aos anos 60. Mesmo alguns distribuídos, similares ao Git, já existiam antes dele.
O Git foi criado porque o sistema que usavam antes para gerenciar o código fonte do Linux (chamado BitKeeper) revogou a licença de uso gratuita e o próprio Linus Torvalds resolveu escrever um sistema próprio, pois achou que os existentes na época não tinham os requisitos necessários para suportar um projeto do tamanho do Linux. Tem mais detalhes dessa história na Wikipedia e também na clássica palestra do Linus.
Já o GitHub surgiu depois, de forma independente, por outras pessoas. A ideia inicial do Linus era apenas ter o sistema de controle de versão.
Sobre o staging area e outros detalhes sobre como o Git guarda modificações dos arquivos, tem esses links que explicam de maneira mais detalhada:
- Como o Git grava os conjuntos de modificações do repositório?
- Quais as diferenças entre os estados dos arquivos do Git (untracked, unmodified, modified, staged)?
E por fim, seguem outros posts que já tivemos sobre o assunto:
- https://www.tabnews.com.br/yurikerber/guia-basico-sobre-git
- https://www.tabnews.com.br/Ernane/guia-rapido-e-pratico-dos-principais-comandos-git
- https://www.tabnews.com.br/Yagasaki/introducao-ao-git-e-github-para-iniciantes
- https://www.tabnews.com.br/mpoda/git-e-github-guia-basico-e-boas-praticas-de-pull-request
- https://www.tabnews.com.br/edsoncosta/git-mini-manual-lista-de-comandos-basicos
- https://www.tabnews.com.br/carlos/guia-completo-instalacao-configuracao-do-git-e-criacao-do-primeiro-repositorio-no-github-windows-e-linux
- https://www.tabnews.com.br/GabrielSozinho/githowto-um-guia-para-aprender-git-do-zero
- https://www.tabnews.com.br/JeanJr/guia-de-bolso-para-commits-semanticos
- https://www.tabnews.com.br/danilocarsan/este-e-um-guia-guia-de-versionamento-nomenclatura-git-que-usso-e-tenho-melhorado-o-que-eu-pederia-melhorar-aberto-a-sugestao-e-discussao
- https://www.tabnews.com.br/cauesooouza/quer-aprender-git-de-uma-forma-interativa
- https://www.tabnews.com.br/Vicrrs/introducao-ao-git
- https://www.tabnews.com.br/jess/primeiros-passos-com-o-git-e-o-github
- https://www.tabnews.com.br/Kayke/git
- https://www.tabnews.com.br/flaviosoliver/git-guia-rapido-de-nomenclaturas-e-principas-comandos