Capítulo 4. Compromissos
Este trabalho foi traduzido com recurso a IA. Agradecemos o teu feedback e comentários: translation-feedback@oreilly.com
Um commit é um snapshot que captura o estado atual de um repositório em um determinado momento. Os snapshots de commit são encadeados, com cada novo snapshot apontando para o seu antecessor. Ao longo do tempo, uma sequência de alterações é representada como uma série de commits.
O Git utiliza um commit como forma de registar as alterações a um repositório. À primeira vista, um commit do Git é comparável a um check-in ou commit encontrado noutros sistemas de controlo de versões. No entanto, as semelhanças são apenas superficiais. Por baixo do capô, a mecânica interna de como o Git cria e gere os commits é totalmente única.
Quando você faz um commit, o Git tira um instantâneo do estado atual do diretório do índice e o armazena no armazenamento de objetos, conforme discutido brevemente no Capítulo 2. O instantâneo não contém uma cópia de cada arquivo e diretório no índice. Em vez disso, o Git compara o estado atual do índice com o instantâneo do commit anterior e obtém uma lista dos arquivos e diretórios afetados quando você está criando um novo commit. Com base nessa lista, o Git cria novos objetos blob para qualquer arquivo alterado e novos objetos de árvore para qualquer diretório alterado, e reutiliza qualquer objeto blob ou de árvore que não tenha sido alterado.
Iremos discutir como preparar o diretório de índice para um commit no ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access