Введение
Waymark выпускает компактные путеводители для прогулок. В поддерживаемом издании Harbour Loop всё ещё сломана ссылка на полный путеводитель. Новый дизайн Explorer находится в разработке, а ваш основной рабочий каталог содержит и подготовленную работу, и дополнительный неподготовленный черновик. Личная заметка также должна оставаться непубличной.
Сначала вы воспользуетесь работающим кратким руководством для скачивания, чтобы увидеть нормальный результат. Затем откроете существующую ветку сопровождения в связанном рабочем дереве рядом с незавершённой работой, исправите небольшую настройку ссылки и проверите полезный файл старого издания, не меняя исходный черновик.
Необходимые предварительные навыки — базовая навигация в терминале, коммиты, ветки и чтение простых log/diff. Программировать сайт, иметь учётную запись на хостинге или сервер Git не требуется. Используйте подготовленные вкладки Workspace и Release Desk. Это настоящие рабочие деревья Git и HTTP-предпросмотр на одной учебной машине. Предпросмотр читает коммиты именованных веток, а не файлы вне коммита; это не производственное развёртывание. Маршруты, личности и тексты путеводителя вымышленные. Продолжительность 35 минут — авторская оценка.
Изучите выпуск и откройте его рабочее дерево
На этом шаге вы проверите нормальное скачивание, увидите сломанную ссылку и разберётесь, какая именно незавершённая работа должна остаться нетронутой.
Откройте Release Desk. На обзорной странице с двумя карточками нажмите Open supported release. Страница должна показывать Harbour Loop, Waymark Pocket Edition 1.0, 3.2 km и North Pier. Это компактное издание всё ещё поддерживается; его название и содержимое путеводителя не заменяются на Explorer.
Нажмите Download quick start. Откройте quick-start.txt через список загрузок браузера. Он должен обозначать Harbour Loop, предлагать встретиться у North Pier и упоминать воду и удобную обувь. Это работающее скачивание показывает нормальный результат.
Нажмите Download full guide. Ожидается страница 404 с текстом Guide not found. В выбранном выпуске нет файла по этой ссылке; это отличается от невозможности подключиться к сайту. Нажмите Back to release на странице ошибки. Позже вы изучите версионируемую ссылку и исправите её.
Нажмите All releases на странице поддерживаемого выпуска, затем Open development preview. Страница показывает Waymark Explorer Edition 2.0, Harbour Loop, 3.2 km и North Pier с названием и форматом нового издания. Эти изменения дизайна не одобрены и не являются требованиями к поддерживаемому изданию. Используйте All releases для возврата.
Переключитесь на Workspace и войдите в исходный рабочий каталог:
cd /home/labex/project/release-desk/editor
Команда cd меняет только каталог этого терминала. Если вы ошиблись в пути, используйте pwd, чтобы вывести своё положение, и ls, чтобы показать содержимое каталога, затем повторите полную cd выше. Обычные ошибки навигации не требуют сброса VM.
Задайте данные автора только для этого репозитория. Параметр --local позволяет не менять глобальные настройки; кавычки объединяют имя с пробелами в одно значение. Эти вымышленные примеры можно заменить. Локальная конфигурация репозитория общая для его связанных рабочих деревьев, в отличие от их отдельных индексов:
git config --local user.name "Guide Editor"
git config --local user.email "guides@example.com"
Изучите состояние. Параметр --short выводит компактный список; branch --show-current выводит выбранную ветку:
git status --short
git branch --show-current
Ожидаются MM preview.txt, ?? private-note.txt и ветка main. В двухколоночном кратком состоянии первая M означает подготовленное изменение, а вторая M — дальнейшее изменение рабочего файла. ?? означает неотслеживаемый файл.
Прочитайте два отдельных изменения. Параметр --no-pager выводит результат напрямую, не открывая просмотрщик с прокруткой. --cached сравнивает индекс, то есть область подготовки Git, с текущим коммитом. Без него diff сравнивает рабочие файлы с индексом. -- отделяет параметры от следующего пути файла:
git --no-pager diff --cached -- preview.txt
git --no-pager diff -- preview.txt
Подготовленное добавление — Plan: add dusk photographs.. Дополнительное неподготовленное добавление — Draft: try the violet cover.. Обе версии должны сохраниться раздельно; сохранять их в коммите, отбрасывать или сводить в одну версию не входит в задачу сопровождения.
Прочитайте личную заметку, не меняя её. Команда cat выводит файл:
cat private-note.txt
Сохраните Do not publish supplier prices. как неотслеживаемую заметку. Чисто выглядящее состояние, достигнутое удалением этой работы, не считается успехом. Теперь предоставьте сопровождению собственные каталог и индекс.
Откройте отдельное рабочее дерево для сопровождения
В этой части шага вы откроете существующую поддерживаемую ветку рядом с незавершённой основной работой. Вы также научитесь узнавать безопасный отказ, когда ветка уже используется.
Оставайтесь в Workspace, в /home/labex/project/release-desk/editor. Выведите локальные ветки:
git --no-pager branch
Текущая ветка — main, а release/1.0 уже существует. Связанное рабочее дерево (linked worktree) — ещё один рабочий каталог, присоединённый к тому же репозиторию. Коммиты и ссылки на ветки у них общие, но выбранная ветка, HEAD и индекс у каждого свои. Его создание не откладывает и не отбрасывает черновик основного каталога.
Сначала понаблюдайте защитное поведение. Ожидается, что следующая команда завершится отказом с main is already checked out и ненулевым кодом выхода. Выполните её отдельно. .. означает родительский каталог, поэтому запрашиваемый каталог располагался бы рядом с editor:
git worktree add ../busy-preview main
Git отказывается повторно открывать уже выбранную ветку. Не добавляйте параметр принудительной операции. Изучите существующую запись:
git worktree list
Она указывает editor на main. Исправляющий сброс не нужен. Теперь явно откройте отдельную существующую ветку сопровождения:
git worktree add ../supported-v1 release/1.0
Здесь ../supported-v1 — новый рабочий каталог, а release/1.0 — существующая ветка, которую нужно открыть. Если опустить ветку, можно создать новую ветку из неправильной начальной точки, поэтому сохраните оба аргумента.
Выведите два настоящих рабочих дерева и войдите в дерево сопровождения:
git worktree list
cd ../supported-v1
git branch --show-current
git status --short
Ожидаются release/1.0 и отсутствие вывода изменённых файлов. Этот чистый индекс отделён от незавершённой работы main. Запись .git связанного рабочего дерева обычно является небольшим файлом, указывающим на общие метаданные репозитория; это не независимый клон.
Прочитайте название поддерживаемого издания и настройку скачивания:
cat release.txt
cat full-guide.path
ls downloads
Название остаётся Pocket Edition 1.0. Настройка ссылки — /downloads/harbour-guid-v1.txt, но настоящий файл полного путеводителя — harbour-guide-v1.txt: в ссылке не хватает e. Сохраните обычные файлы, форматирование и всё постороннее содержимое. Проверка оценивает настоящую связанность рабочих деревьев и сохранность main, а не просто существование папки.
Исправьте ссылку и сохраните черновик
На этом шаге вы исправите одну версионируемую ссылку, запишете коммит сопровождения, проверите полный старый путеводитель и подтвердите, что исходные подготовленная и неподготовленная работы остаются раздельными.
Оставайтесь в Workspace, в /home/labex/project/release-desk/supported-v1. Файл настройки содержит один абсолютный путь сайта и перевод строки. Команда printf выводит значение по формату: %s означает текст, а \n добавляет перевод строки. Одинарные кавычки сохраняют этот формат. > заменяет только указанный файл выведенным значением. Используйте это только для небольшого файла настройки:
printf '%s\n' '/downloads/harbour-guide-v1.txt' > full-guide.path
Изучите однострочное исправление перед подготовкой:
git --no-pager diff -- full-guide.path
Ожидается только замена harbour-guid-v1.txt на harbour-guide-v1.txt. Подготовьте этот файл и изучите подготовленный патч:
git add full-guide.path
git --no-pager diff --cached -- full-guide.path
Команда add записывает файл этого рабочего дерева в индекс этого же рабочего дерева. Она не подготавливает черновик main. Запишите исправление; -m задаёт осмысленное сообщение напрямую, а кавычки сохраняют его пробелы:
git commit -m "Repair the supported Harbour guide link"
Изучите историю сопровождения. Параметр --oneline показывает короткую строку на коммит, а --decorate — метки веток и тегов:
git --no-pager log --oneline --decorate
git status --short
Должно быть одно исправление непосредственно над исходным поддерживаемым коммитом, без коммитов редизайна Explorer, и чистое рабочее дерево сопровождения. Подготовленный тег supported-start отмечает исходную вершину сопровождения; сохраните его неизменным. Коммит перемещает эту поддерживаемую ветку, которую читает её локальный предпросмотр. Удалённая отправка или развёртывание на хостинге не входят в этот сценарий.
Переключитесь на Release Desk. Нажмите Release Desk в шапке для возврата к обзору, затем Open supported release. Проверьте Pocket Edition 1.0, Harbour Loop, 3.2 km и North Pier.

Найдите Pocket Edition 1.0 слева и две ссылки скачивания справа; на узком экране панель скачивания находится под сведениями о выпуске.
Нажмите Download full guide и откройте настоящий скачанный harbour-guide-v1.txt через список загрузок браузера. Он должен содержать старт у North Pier, все три пронумерованных указания через Clock Steps, старую лодочную станцию и Anchor Square, расстояние 3.2 km и заключительное напоминание о дорожках и мусоре. Один ответ 200 или имя файла не доказывают полноту содержимого.
Снова нажмите Download quick start и убедитесь, что исходный краткий список подготовки всё ещё работает. Через All releases откройте предпросмотр разработки и подтвердите, что Explorer Edition 2.0 не изменилось. Вернитесь через All releases.
Переключитесь на Workspace и вернитесь в исходный каталог:
cd /home/labex/project/release-desk/editor
git branch --show-current
git status --short
git --no-pager diff --cached -- preview.txt
git --no-pager diff -- preview.txt
cat private-note.txt
Ожидаются main, исходные MM preview.txt и ?? private-note.txt, то же подготовленное предложение о плане фотографий, то же отдельное неподготовленное предложение о фиолетовой обложке и неизменная личная заметка. Проверка оценивает исправленную ветку и настоящие скачиваемые файлы вместе с этими сохранёнными фактами. Оставьте связанное рабочее дерево доступным; его удаление не входит в результат работы.
Резюме
Вы открыли существующую ветку сопровождения в настоящем связанном рабочем дереве, распознали защитный отказ из-за занятой ветки и исправили одно скачивание поддерживаемого выпуска, не затронув исходные подготовленную и неподготовленную работы. Старое издание, оба полезных скачиваемых файла и личная заметка остались целы.
Следующая независимо инициализированная пошаговая работа повторно использует существующее изолированное исправление из разработки вместо нового редактирования. Она добавляет cherry-pick, сохраняя те же решения о выборе ветки и сохранении черновика.



