Leve Apenas a Correção para a Versão Antiga

GitBeginner
Pratique Agora

Introdução

O guia de Harbour Loop com suporte precisa de uma correção no link de download. O desenvolvimento já contém essa correção, junto com uma reformulação Explorer não aprovada. A árvore de trabalho original da main ainda tem um plano de fotos preparado, um rascunho adicional de capa não preparado e uma anotação particular não rastreada.

Use a técnica de worktree do primeiro laboratório guiado para dar à branch de manutenção existente um diretório de trabalho limpo. Leia os patches reais, selecione a única correção autossuficiente e reaplique apenas essa alteração com cherry-pick. Depois, teste o download útil da edição antiga e verifique que nem a reformulação nem seu trabalho inacabado entraram na versão.

Este módulo inicializa seus próprios repositórios e arquivos; ele não reutiliza a VM anterior. Os pré-requisitos são conhecimentos básicos de terminal/commit/branch/log/diff e os conceitos de worktree vinculada e pequenos arquivos ensinados no primeiro laboratório guiado. Não é necessário escrever código de site nem ter uma conta hospedada. Use Workspace e Release Desk. A prévia real de Git/HTTP é local a uma única máquina de treinamento e lê commits de branches, não edições em arquivos de trabalho. Todas as rotas e identidades são fictícias. A duração de 40 minutos é uma estimativa do autor.

Identifique a Correção e Abra a Worktree de Manutenção

Nesta etapa, veja o download esperado, diferencie a correção isolada da reformulação e abra a branch antiga existente sem perturbar a main.

Abra Release Desk e depois Open supported release. Verifique Harbour Loop, Pocket Edition 1.0, 3.2 km e North Pier. Use Download quick start, abra quick-start.txt pela lista de Downloads do navegador e confira o ponto de encontro original e a lista curta de preparação.

Use Download full guide. Espere a página 404 real Guide not found e clique em Back to release. O serviço está acessível, mas o link desta versão aponta para um arquivo que ela não contém.

Use All releases e depois Open development preview. Explorer Edition 2.0 não foi aprovada. Seu Download full guide já funciona: abra harbour-guide-v1.txt pela lista de Downloads e leia as três instruções originais, o início em North Pier, a distância de 3.2 km e o lembrete sobre o caminho e o lixo. Preserve essa correção útil, deixando a reformulação de fora. Use All releases para voltar.

Mude para Workspace e entre explicitamente no diretório de trabalho original:

cd /home/labex/project/release-desk/editor

Para erros comuns de caminho, use pwd e ls e depois repita este cd completo; não restaure a VM ao estado inicial. Configure uma identidade de autor local ao repositório. --local afeta este repositório e suas worktrees vinculadas, não a configuração global. Os exemplos fictícios entre aspas podem ser substituídos:

git config --local user.name "Guide Editor"
git config --local user.email "guides@example.com"

Leia o estado inacabado antes de fazer a manutenção:

git branch --show-current
git status --short
git --no-pager diff --cached -- preview.txt
git --no-pager diff -- preview.txt
cat private-note.txt

Como no primeiro laboratório, espere main, MM preview.txt e ?? private-note.txt. O primeiro diff mostra a adição preparada Plan: add dusk photographs.. O segundo mostra a adição posterior não preparada Draft: try the violet cover.. Preserve seus conteúdos distintos e a anotação particular. --cached seleciona a comparação do índice com o commit; o diff simples compara os arquivos de trabalho com o índice. --no-pager exibe a saída diretamente e -- separa o caminho seguinte.

Leia o histórico do desenvolvimento registrado em commits. --oneline resume cada entrada e --decorate identifica os ponteiros e as tags:

git --no-pager log --oneline --decorate dev-start

A tag fixa dev-start marca a ponta da main recebida. Do mais recente ao mais antigo, o histórico preparado contém Plan the Explorer photo collection, Correct the Harbour Loop download link, Introduce the Explorer redesign e Prepare the supported Harbour Loop guide. Mantenha a tag e a ponta da main inalteradas.

Inspecione a alteração mais recente antes de escolhê-la. show exibe um commit selecionado e seu patch:

git --no-pager show dev-start

Ela altera explorer-plan.txt. Isso é trabalho futuro não relacionado. A correção está um pai antes desta referência fixa. ~1 seleciona esse pai sem alterar sua cópia de trabalho:

git --no-pager show dev-start~1

Seu patch completo altera apenas o arquivo de uma linha full-guide.path: /downloads/harbour-guid-v1.txt torna-se /downloads/harbour-guide-v1.txt. Essa correção é autossuficiente; ela não exige a reformulação. Inspecione também a reformulação anterior. ~2 percorre dois passos pelos commits pais a partir da referência fixa e seleciona um único commit ancestral:

git --no-pager show dev-start~2

Ela altera a identidade da versão e adiciona planos do Explorer. Fazer merge da branch inteira de desenvolvimento importaria essas alterações não aprovadas junto com a correção útil.

Abra a branch existente com suporte ao lado da main. .. identifica o diretório pai, e o segundo argumento escolhe explicitamente a branch existente em vez de criar uma nova a partir da main:

git worktree add ../supported-v1 release/1.0
git worktree list
cd ../supported-v1
git branch --show-current
git status --short
cat release.txt

Espere que a lista nativa de worktrees inclua os dois diretórios, a branch release/1.0, um estado de manutenção limpo e a identidade Pocket Edition 1.0. Seu índice separado dá ao cherry-pick o alvo limpo necessário, enquanto o rascunho da main permanece no lugar. Se pedir por engano para adicionar main novamente, a recusa de branch já em uso ensinada no primeiro laboratório não exige força nem reset: inspecione git worktree list e use a branch existente com suporte.

Aplique a Correção e Verifique a Versão Preservada

Nesta etapa, reaplique apenas o patch selecionado na versão antiga, teste o guia real e confirme que o trabalho original de desenvolvimento está intacto.

Permaneça em Workspace, em /home/labex/project/release-desk/supported-v1. Um cherry-pick pega a alteração introduzida por um commit selecionado e a aplica na sua branch atual, normalmente registrando um novo commit. Ele não faz merge de todos os ancestrais do commit selecionado. Neste cenário, a branch antiga tem um pai diferente do da correção de origem, portanto a nova correção tem seu próprio ID de commit.

Leia o link antigo uma vez e aplique a correção isolada inspecionada. A tag continua visível em qualquer uma das worktrees vinculadas porque os objetos e as referências do repositório são compartilhados:

cat full-guide.path
git cherry-pick dev-start~1

Espere um novo commit com o assunto do link de download e a alteração de um arquivo, sem conflito. Este patch preparado altera a mesma pequena configuração na base com suporte; ele não tem uma cadeia de dependências. Seu ID de commit pode ser diferente.

Revise exatamente o que a branch de manutenção recebeu. A tag fixa supported-start marca a ponta antiga recebida, HEAD é o commit atual desta worktree e diff compara esses snapshots:

git --no-pager diff supported-start HEAD

Espere apenas a correção do caminho do guia completo. Não deve haver alteração em release.txt, no conteúdo do guia ou no texto original da prévia, nem arquivo exclusivo do Explorer. Inspecione o histórico real e o estado limpo do alvo:

git --no-pager log --oneline --decorate
git status --short
cat release.txt

Deve haver uma correção diretamente após o commit original da versão com suporte. Os commits de reformulação do desenvolvimento e do plano de fotos estão ausentes da ancestralidade desta branch. A redação exata da mensagem não é o critério de sucesso; o patch isolado, a base correta e os arquivos preservados são.

Mude para Release Desk, clique em Release Desk no cabeçalho para voltar à visão geral e depois em Open supported release. Ele deve manter Pocket Edition 1.0, Harbour Loop, 3.2 km e North Pier. A prévia local lê o commit da branch que você acabou de avançar; nenhuma implantação remota ou em produção está sendo simulada.

Clique em Download full guide. Abra o harbour-guide-v1.txt real pela lista de Downloads do navegador. Compare o conteúdo completo com o download do desenvolvimento lido antes: início em North Pier; as três instruções passando por Clock Steps, o antigo abrigo de barcos e Anchor Square; 3.2 km; e o lembrete final sobre o caminho e o lixo. A correção entrega o guia original com suporte, não uma nova rota Explorer. Apenas o link de download ou um código de status de sucesso não comprovaria o conteúdo completo.

Use Download quick start e mantenha sua lista original. Em All releases, abra a prévia de desenvolvimento e confirme que Explorer Edition 2.0 está inalterada. Volte com All releases.

Mude para Workspace e entre novamente no diretório original da main. Estar em outro diretório muda qual índice de worktree seus comandos inspecionam. A opção de log -1 limita a saída ao commit mais recente:

cd /home/labex/project/release-desk/editor
git branch --show-current
git --no-pager log -1 --oneline --decorate
git status --short
git --no-pager diff --cached -- preview.txt
git --no-pager diff -- preview.txt
cat private-note.txt

O commit mais recente ainda deve ser o commit original do plano de fotos marcado por dev-start. Espere os originais MM preview.txt e ?? private-note.txt da main, a mesma frase preparada do plano de fotos, a frase separada não preparada da capa violeta e a anotação particular inalterada. Não os registre em um commit nem os descarte apenas para deixar o status limpo. Deixe a worktree com suporte disponível. O ponto de verificação confere o vínculo, o histórico com suporte e todos os arquivos exigidos junto com os downloads reais e a preservação da main.

Resumo

Você inspecionou os patches reais do desenvolvimento, selecionou a correção isolada do link e a reaplicou com cherry-pick na worktree de manutenção limpa. A versão antiga recebeu uma correção útil sem herdar a reformulação.

Os downloads do guia completo e de início rápido permaneceram completos, enquanto a ponta da branch de desenvolvimento, as versões preparada e não preparada do rascunho e a anotação particular permaneceram intactas. O desafio independente muda a branch com suporte, o guia e a posição da correção, portanto selecione com base em evidências em vez de copiar um deslocamento.