Introdução
Administradores Linux editam arquivos de configuração com frequência. O Git é útil porque registra o que mudou, quando mudou e por que mudou. Mesmo quando um fluxo de trabalho de infraestrutura completo não é necessário, um pequeno repositório Git pode ajudá-lo a rastrear alterações locais de configuração antes e depois de uma edição.
Neste laboratório, você rastreará um pequeno arquivo de configuração chamado app.conf dentro de /home/labex/project. Você inicializará um repositório Git, configurará a identidade do autor local, criará um commit inicial, editará o arquivo, inspecionará as diferenças (diff) e criará um segundo commit. O laboratório utiliza o histórico do Git como um registro durável das alterações de configuração.
Inspecionar o Arquivo de Configuração
Nesta etapa, você inspecionará o arquivo que o Git irá rastrear. Antes de criar um repositório, certifique-se de saber qual arquivo é importante e qual é o seu conteúdo atual.
Entre no diretório do projeto LabEx.
cd /home/labex/project
Liste o arquivo de configuração. A opção -l exibe metadados como tamanho, proprietário e permissões.
ls -l app.conf
Leia o arquivo. Esta configuração utiliza linhas simples do tipo key=value, comuns em configurações de aplicações Linux.
cat app.conf
Você deverá ver log_level=info. Mais tarde, você alterará apenas essa configuração para que o diff do Git permaneça focado.
Inicializar um Repositório Git Local
Nesta etapa, você transformará /home/labex/project em um repositório Git. Um repositório Git armazena o histórico em um diretório oculto chamado .git. O Git também precisa de um nome de autor e um e-mail antes de poder criar commits. Em um ambiente de trabalho real, isso pode ser configurado globalmente, mas em laboratórios é mais seguro configurar a identidade apenas para este repositório.
Inicialize o repositório. A opção -b main cria o branch inicial com o nome explícito main, o que evita que o Git exiba um aviso sobre o branch padrão.
git init -b main
Defina a identidade do autor local. O escopo --local armazena esses valores apenas neste repositório. O terceiro comando desativa a saída colorida do Git dentro deste repositório de laboratório, para que as saídas curtas de status, diff e log sejam mais fáceis de ler no terminal do navegador.
git config --local user.name "LabEx Learner"
git config --local user.email "learner@example.com"
git config --local color.ui false
Execute git status --short. O arquivo deve aparecer como não rastreado (untracked), pois o Git o vê, mas ainda não o está monitorando. Na saída curta de status, ?? significa um arquivo não rastreado.
git status --short
Confirmar a Configuração Inicial
Nesta etapa, você criará o primeiro commit. O Git possui duas áreas principais a serem compreendidas neste ponto: a árvore de trabalho (working tree) e a área de preparação (staging area). A árvore de trabalho são os arquivos que você vê e edita. A área de preparação é o conjunto de alterações que farão parte do próximo commit.
Prepare (stage) apenas o arquivo de configuração. Evite usar git add . enquanto estiver aprendendo, pois isso pode acidentalmente preparar arquivos não relacionados.
git add app.conf
Verifique o status curto novamente. A significa que o arquivo foi preparado como um novo arquivo.
git status --short
Crie o primeiro commit com uma mensagem clara.
git commit -m "Track initial app configuration"
Inspecione o histórico recente. --oneline mantém a saída compacta. A opção --no-pager imprime o log diretamente no terminal em vez de abrir um visualizador interativo.
git --no-pager log --oneline
Revisar e Confirmar uma Alteração de Configuração
Nesta etapa, você editará a configuração e inspecionará a alteração antes de confirmá-la. Este é o hábito fundamental do Git para rastreamento de configurações: faça uma alteração focada, revise o diff e, em seguida, confirme com uma mensagem que explique a intenção.
Altere log_level de info para debug. O comando sed -i edita o arquivo diretamente. O padrão começa com ^ e termina com $ para que altere apenas a linha completa log_level=info.
sed -i 's/^log_level=info$/log_level=debug/' app.conf
Mostre a diferença entre a versão confirmada e sua árvore de trabalho. --no-pager mantém o diff diretamente no terminal.
git --no-pager diff -- app.conf
O diff deve mostrar uma linha removida e uma linha adicionada:
-log_level=info
+log_level=debug
Prepare e confirme a alteração focada.
git add app.conf
git commit -m "Enable debug logging"
Veja o histórico compacto novamente. Agora você deve ver dois commits.
git --no-pager log --oneline
Por fim, verifique se a árvore de trabalho está limpa para app.conf.
git status --short app.conf
Resumo
Você praticou operações básicas do Git para rastreamento de configurações Linux. Você inspecionou um arquivo de configuração, inicializou um repositório, definiu a identidade do autor local, verificou o status, preparou um arquivo específico, criou um commit inicial, revisou um diff focado e confirmou uma alteração de configuração. Esses hábitos ajudam os administradores a entender e recuperar alterações de configuração em vez de editar arquivos às cegas.



