Usando commits no Git

Índice
As mudanças em Git Não são iguais aos demais sistemas de gerenciamento e controle de versão, pois, ao armazenar apenas o que realmente mudou, diminui o tamanho dos arquivos gerados para controle e também dá maior agilidade.
O aspecto que controla tudo isso é o índice quem tem a responsabilidade de saber quem, o quê e quando de todas as alterações feitas, é por isso que depois de adicionar os diferentes aspectos ao nosso índice do galho a ligação é feita comprometer-se.
O que é um commit?Em Git Sabemos que, para adicionar uma mudança, devemos fazer um comprometer-se do mesmo, uma vez que foi adicionado ao índice do repositório. No entanto, o que é um comprometer-se exatamente? Essa pergunta nem sempre é feita a nós mesmos, pois a maneira como Git lida com isso é muito claro, mas um comprometer-se é o jeito que Git registra o estado atual do índice do repositório e o armazena no objeto correspondente, desta forma cada comprometer-se é derivado do anterior e assim a estrutura que não sofre alterações pode ser reaproveitada.
O gerenciamento de recursos que torna isso tão rápido se deve às comparações feitas entre SHA1 Portanto, se os elementos dentro do índice tiverem o mesmo hash, eles não continuarão a se aprofundar em suas alterações, pois são idênticos e, portanto, apenas os arquivos que realmente foram alterados são levados.
A maneira pela qual o compromete permite-nos estabelecer estruturas hierárquicas que dão a certeza de obter a origem de todas as alterações registadas, por isso se seguirmos as melhores práticas de Git Nunca estaremos perdidos, graças aos identificadores exclusivos também podemos ter certeza de que, se alguma funcionalidade criou um problema, ela pode ser encontrada no ponto exato em que foi incluída.
Nós comentamos sobre como compromete tem um hash em SHA1 com os quais podem ser identificados, verifica-se que este hash também os torna únicos e irrepetíveis, ou seja, se tivermos um comprometer-se e em outro repositório o mesmo hash é encontrado para que possamos saber que é o mesmo comprometer-se.
Por causa disso o comprometer-se também é considerado atômico, isto é, como uma única unidade independente que armazena o estado de muitos diretórios ou arquivos, com isso podemos nos referir ao comprometer-se como uma unidade dentro do nosso repositório e assim poder tratar cada um como um elemento que, embora relacionado com o anterior, é único.
Embora o hash SHA1 serve como um identificador único para o comprometer-se, sua estrutura de 40 caracteres alfanuméricos pode representar um problema quando queremos nos comunicar com outro desenvolvedor e explicar que comprometer-se estamos conversando.
Nomes relativosPara resolver este problema, podemos estabelecer nomes relativos e mais fácil de lembrar para comprometeNão substituem o hash, mas funcionam como uma espécie de rótulo que nos permite identificá-los de uma forma mais humana.
Para falar sobre o último comprometer-se do galho podemos simplesmente nos referir a CABEÇA, uma vez que isso sempre se referirá ao último e mais recente comprometer-seNo entanto, como nem sempre vamos exigir isso, basta usarmos os primeiros caracteres do cerquilha, embora nem sempre seja exclusivo, então, ao adicionar mais caracteres, alcançaremos a exclusividade correspondente.
Vejamos então o comando que devemos usar para atingir o último:
git log -1 --pretty = identificador on-line commit

Agora veremos na imagem a seguir como identificamos um comprometer-se dentro do nosso repositório de teste, para isso vamos inicialmente localizar qual é o SHA1 do CABEÇA e então vamos chamá-lo por seus primeiros caracteres, vejamos:

Com o exemplo anterior, descobrimos uma ferramenta para Git isso pode ser muito útil e é o comando de log, isso é muito poderoso, pois nos permite localizar os diferentes comprometer-se de forma rápida e precisa, porém possui muitos parâmetros e configurações que podem ser difíceis de memorizar em um primeiro momento, porém para utilizá-lo não precisamos aprender todos eles, podemos ir aos poucos enquanto nos acostumamos com seus usar.
Se quisermos ver o histórico de commits, basta fazer o seguinte:
git log branchname

Com isso obteremos o informações detalhadas do histórico nosso galho e deles comprometeVamos ver como fica em nosso console no repositório de testes que temos:

Então, notamos como o compromete estão organizados do mais recente ao mais antigo, o que nos permite ver um pouco a trajetória histórica das mudanças sofridas pela galho escolhido para visualizar o registro histórico.
Como trabalhar no console às vezes é um pouco pesado, embora seja muito necessário, Git nos oferece uma ferramenta que nos permite revisar a história de compromete graficamente e é gitk não é um subcomando de Git como por exemplo o log que já vimos, mas é um comando independente e nos permite acessar um maior detalhe do ramo e seu histórico.
Para usá-lo, basta executar o seguinte comando:
gitk nameBranch

Vamos ver como fica a execução dele no console:

Embora possa parecer que nada aconteceu, em breve teremos uma janela com o gráfico solicitado para o galho especificado como podemos ver na seguinte captura de tela:

PROLONGAR

Podemos perceber que temos um detalhamento muito maior, além da melhoria em sua visualização.
Refs Y Symrefs pertence a referências Y referências simbólicas respectivamente, o primeiro corresponde a um identificador SHA1 de um objeto dentro do quadro de objeto de nosso repositório, por outro lado, o segundo corresponde indiretamente a um objeto, apesar de seu nome, também é uma referência.
Esta estrutura de referências é muito importante conhecer, pois nos permitirá entender a organização de nosso diretório de compromete Y galhos Dentro de Git, que são armazenados no diretório .git / ref.
Criação de uma referência simbólicaSe quisermos criar explicitamente um referência simbólica apenas use o comando git symbolic-ref, e embora seja viável usar nomes como CABEÇA para essas referências não é aconselhável, pois no final podem nos levar a uma confusão que pode causar danos ao nosso repositório.
Finalmente, vamos ver como fica a execução deste comando quando o aplicamos ao nosso repositório de teste:

Outro aspecto interessante de compromete, é que podemos trabalhar com nomes relativosIsso torna a localização de intervalos de confirmação muito simples, por exemplo, se quisermos localizar o que existe entre as revisões de um determinado período, podemos fazê-lo.
Para conseguir isso, só temos que usar o nome do ramo mais o símbolo ^ e o número da revisão. Por exemplo mestre ^ onde nos referimos à penúltima mudança feita no galho mestre.
História do RepositórioDesta forma, poderemos percorrer todo o histórico do nosso repositório, o que nos dá a possibilidade de acessar em relação ao compromete que nos possibilitaram ter o atual, se seguirmos a estrutura mestre 2 vai nos levar ao segundo pai de comprometer-se, ou seja, aquele que deu vida em paralelo, também com ~ podemos acessar o pai do pai do nosso atual commit, ou seja, o avô, para colocá-lo de alguma forma na genealogia.
Um exemplo pode ser mestre 2 ~ 3 Para fazer referência às mudanças históricas em nosso repositório, se quisermos obter o nome de um commit relativo, simplesmente temos que usar o seguinte comando:
git rev-parse RelativeName

Isso retornará o SHA1 do comprometer-se a que chegamos. Vamos ver na imagem a seguir como podemos obter o nome do commit atual do master e com mestre ~ o nome do primeiro pai do mesmo que seria o comprometer-se de onde começamos:

Percebemos então como fomos capazes de obter dois SHA1 diferente e válido dentro de nosso repositório, usando apenas nomes relativos.
Com isso terminamos este tutorial, introduzimos novos conceitos do que o compromete Dentro de GitIsso nos dá a possibilidade de entender melhor as estruturas de nossos repositórios, com isso a organização parecerá mais lógica e assim poderemos ser muito mais eficazes no gerenciamento de alterações dentro do nosso código. A maneira que Git gerenciar as diferenças o torna tão especial e é por isso que ele se tornou um dos principais gerenciadores de versões da tecnologia atual.Gostou e ajudou este tutorial?Você pode recompensar o autor pressionando este botão para dar a ele um ponto positivo
wave wave wave wave wave