Versionado
Htmlpress no tiene una función dedicada al versionado: las piezas que ya ofrece cubren los dos casos habituales. Elige según lo distintas que sean tus versiones:
- Un sitio, una sección por versión: unas pocas versiones cuya documentación vive en una sola rama.
- Un despliegue por versión: versiones mayores de larga duración mantenidas en sus propias ramas.
La mayoría de los proyectos solo necesitan mantener la documentación más reciente y la de la versión mayor anterior. Si las versiones antiguas solo necesitan sus notas, basta con una sección de registro de cambios.
Una sección por versión
Guarda las páginas de cada versión anterior en una carpeta propia. La documentación
actual se queda en /, y cada versión anterior se convierte en una
sección:
- getting-started.html
-
v1
- index.html
- getting-started.html
title: Acme
sections:
- title: Docs
prefix: /
- title: v1
prefix: /v1/
icon: archive
siteTitle: Acme v1
La correspondencia por el prefijo más largo lleva cada página /v1/… a
la sección v1, así que obtiene su propia barra lateral mientras el
resto del sitio mantiene la documentación actual. siteTitle cambia el
texto de la marca junto al logo dentro de esa sección, para que el lector siempre
vea en qué versión está. Define position: sidebar para sacar las
pestañas de versión de la cabecera.
Para avisar a los lectores en las páginas antiguas, empieza cada una con un callout:
<htmlpress-callout type="warning">
<p>You are reading the docs for v1. <a href="/getting-started/">See the latest version</a>.</p>
</htmlpress-callout>
:::warning
You are reading the docs for v1. [See the latest version](/getting-started/).
:::
Conviene saber:
- La búsqueda indexa todo el sitio, así que los resultados incluyen las páginas de todas las versiones.
- Copiar una carpeta por versión duplica contenido; congela la carpeta antigua y corrígela solo cuando sea necesario.
Un despliegue por versión
Cuando cada versión mayor vive en su propia rama (main,
v1, …), compila cada rama como un sitio propio y sírvela desde su
propia dirección: un subdominio (v1.docs.example.com) o una subruta
(docs.example.com/v1/) con
base.
site: https://docs.example.com
base: /v1/
title: Acme v1
banner: You are reading the v1 docs · <a href="https://docs.example.com/">Go to the latest →</a>
htmlpress start y preview sirven bajo la misma base, así
que la rama se previsualiza exactamente como se despliega. Enlaza los despliegues
entre sí con una sección custom o un
enlace de la cabecera, que actúa
como selector de versión:
sections:
- title: Docs
prefix: /
- title: v1
type: custom
url: https://docs.example.com/v1/
icon: archive
Cada despliegue tiene su propio índice de búsqueda, sitemap y
llms.txt, así que las versiones nunca se mezclan. El coste es una
compilación y un job de CI por cada rama mantenida; consulta
Deployment para la configuración de cada hosting. La
mayoría de los hostings despliegan las ramas en sus propias URL de serie.
Ver también
- Secciones de artículos: tipos de sección, prefijos y correspondencia.
-
Metadatos del sitio: los campos
banner,titleysiteusados arriba.
Hecho con ❤ y Htmlpress