From: Thadeu Lima de Souza Cascardo Date: Sat, 28 Jun 2014 14:35:50 +0000 (-0300) Subject: Introdução a reescrevendo a história. X-Git-Url: http://git.cascardo.info/?p=cursogit.git;a=commitdiff_plain;h=01304456fe24bcd0dae68b6ec5b0184d3e251886 Introdução a reescrevendo a história. Um pouco sobre o que é o histórico em Git, e quais as implicações em alterar um commit e a cadeia de commits. --- diff --git a/Merge.mdwn b/Merge.mdwn index 033aec8..3c5c709 100644 --- a/Merge.mdwn +++ b/Merge.mdwn @@ -67,6 +67,24 @@ daquele referenciado pelo branch master. ## Histórico +A sequência de commits que vemos em um branch é também chamada de +histórico. Como é utilizado um hash criptográfico e um link entre os +commits utilizando o ID, e esse faz parte do conteúdo criptografado, não +é possível alterar este histórico. + +Quando alteramos um commit, como feito acima, o histórico original é +mantido enquanto ainda existir alguma referência a ele, através de +branches, por exemplo. Se algum commit tiver o commit alterado como seu +genitor, sua referência ainda será ao commit genitor original, não à +nova versão do commit. Sendo assim, para aproveitar os commits já +realizados, é necessário reescrevê-los para que apontem, em cadeia, às +novas versões dos commits reescritos. Isso se chama reescrevendo a +história, e pode ser feito com o comando git rebase, entre outros +comandos. + +Veremos mais logo quando e como reescrever a história. Agora, veremos +quando não se deve reescrevê-la. + ## Fast-foward ## Merge