Este artigo explicará brevemente a diferença entre a redefinição do git -Hard, -Soft e -Mixed.
Qual é a diferença entre o git redefinido -mixed, -Soft e -Hard?
O Git fornece várias opções de redefinição. Com base em como eles lidam com os compromissos, todas as opções disponíveis são diferentes uma da outra. Todos eles modificam o histórico do git e movem a cabeça para trás. Além disso, eles lidam com as mudanças de maneira diferente, como:
Vamos dar um exemplo para ver como o “$ git reset”Comando funciona com opções diferentes!
Etapa 1: vá para o repositório Git desejado
Primeiro, vá para o repositório Git desejado, utilizando o “cd”Comando:
$ CD "C: \ git \ test_repo"
Etapa 2: Criar arquivo
Agora, execute o comando abaixo para criar um arquivo:
$ touch file4.TXT
Etapa 3: Adicionar arquivo ao índice de estadiamento
Use o "git add”Comando para adicionar o arquivo recém -gerado ao índice de estadiamento:
$ git add file4.TXT
Etapa 4: Mudanças de compromisso
Em seguida, adicione todas as alterações ao repositório de trabalho executando o “Git Commit”Comando:
$ git commit -m "file4 adicionado"
Etapa 5: Verifique o Git Log
Em seguida, verifique o histórico de log do Git para visualizar os mais recentes começos que foram adicionados:
$ git log
Na saída abaixo, pode -se observar que todas as últimas confirmações adicionadas são exibidas e o ““CABEÇA”Está apontando para o compromisso recente:
Observação: Para conferir a posição atual da cabeça da cabeça de uma maneira melhor, execute o “log git”Comando junto com o“-uma linha" bandeira:
$ git log --oneeline
Abaixo, a saída mostrada mostra a lista de commit sha hash com mensagens de confirmação:
Etapa 6: use o comando git reinicialize -Soft
Para reverter as mudanças adicionadas do repositório Git para o índice de estadiamento, utilize o “Redefinição do Git”Comando junto com o“-macio”Opção e especifique a posição desejada da cabeça, onde é necessário mover o ponteiro:
$ git Reinicia -cabeça macia ~ 1
Etapa 7: Verifique o status Git
Agora, verifique a posição revertida da cabeça Verifique o status do repositório Git:
$ git status
Pode -se ver que o “Redefinição Git -Soft”O comando retornou as mudanças de confirmação no índice de estadiamento Git. Além disso, o “Arquivo4.TXT”Agora, o arquivo está no índice de estadiamento Git e precisa ser comprometido:
Etapa 8: Verifique o Git Log
Para ver a posição atual da cabeça, execute o comando dado junto com o “-uma linha”Opção:
$ git log --oneeline
Aqui, a cabeça está apontando para o “Arquivo3" comprometer-se:
Etapa 9: Use o Git Reset - Comando Misto
Para desfazer alterações comprometidas e remover os arquivos da área de estadiamento sem excluir delas do diretório de trabalho, execute o “$ git reset -Mixed”Comando juntamente com a posição de cabeça necessária do Commit:
$ git reset -cabeça misturada ~ 1
Etapa 10: Verifique o status Git
Veja as alterações recém -adicionadas verificando o status do repositório Git:
$ git status
Pode -se observar que as alterações de confirmação especificadas são removidas da área de estadiamento. No entanto, eles são colocados na área de trabalho:
Etapa 11: Verifique o Git Log
Verifique o histórico de log de referência do Repositório Git junto com o SHA Hash:
$ git log --oneeline
Etapa 12: Use Redefinição Git - Comando Hard
Para remover alterações adicionais do diretório de trabalho local do Git, execute o “$ git reset -Hard”Comando:
$ git Reinicia -Cabeça difícil ~ 1
Etapa 13: Verifique o ponteiro da cabeça revertida
Para verificar o ponteiro da cabeça, reverta para a posição especificada, execute o “log git”Comando:
$ git log --oneeline
Abaixo da saída mostra que a cabeça está apontando para o “File1 adicionado" comprometer-se:
Etapa 14: Verifique o status Git
Para visualizar as alterações adicionadas, verifique o status Git:
$ git status
Pode -se observar que não temos nenhuma trilha e alterações pendentes de “File2.TXT" arquivo. Portanto, file2.TXT foi removido completamente:
Etapa 15: Verifique a lista de conteúdo do repositório
Para verificar a lista de conteúdo do repositório, execute o “ls”Comando:
$ ls
Como você pode ver, o “File2.TXT”O arquivo não existe no diretório atual:
Explicamos a diferença entre as opções de redefinição do git, -Soft e -Hard.
Conclusão
O "Redefinição do Git”O comando é usado para redefinir as alterações, modificar a história do repositório Git e corrigir erros. O "Redefinição Git -Soft”O comando mantém os arquivos e retorna as alterações de compromisso na área de estadiamento Git. Por outro lado, o “Redefinição do Git -Mixed”O comando desfazer as alterações de confirmação e remova o arquivo do índice de estadiamento sem excluí -lo do diretório de trabalho. Para excluir todas as mudanças e removê -las da área de trabalho do Git, o “Redefinição Git -Hard”O comando pode ser usado. Este artigo ilustrou a diferença entre o git redefinir -mixed, -Soft e -Hard.