Nota:
Los formularios de propuesta se encuentran actualmente en versión preliminar pública y están sujeto a cambios.
Acerca de la sintaxis YAML para formatos de propuesta
Puede crear formatos de incidencia personalizados si agrega un archivo de definición de formato YAML a la carpeta /.github/ISSUE_TEMPLATE del repositorio. Si no tienes experiencia con YAML y quieres obtener más información, consulta Aprende YAML en Y minutos. Puedes definir diferentes tipos de entrada, validaciones, asignados predeterminados y etiquetas predeterminadas para tus formularios de problemas.
Cuando un colaborador rellena un formulario de incidencia, sus respuestas para cada entrada se convierten en markdown y se añaden al cuerpo de una incidencia. Los contribuyentes pueden editar las propuestas que se crearon con estos formatos de propuesta y otras personas pueden interactuar con las propuestas como con una de ellas que se creó mediante otros métodos.
Los formatos de propuesta no son compatibles para las solicitudes de cambios. Puedes crear plantillas de solicitudes de cambios en tus repositorios para que las utilicen los colaboradores. Para más información, consulta Crear una plantilla de pull request para tu repositorio.
Este archivo de configuración YAML define un formulario de problema con varias entradas para reportar un error.
name: Bug Report
description: File a bug report.
title: "[Bug]: "
labels: ["bug", "triage"]
projects: ["octo-org/1", "octo-org/44"]
assignees:
- octocat
type: bug
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: input
id: contact
attributes:
label: Contact Details
description: How can we get in touch with you if we need more info?
placeholder: ex. email@example.com
validations:
required: false
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
placeholder: Tell us what you see!
value: "A bug happened!"
validations:
required: true
- type: dropdown
id: version
attributes:
label: Version
description: What version of our software are you running?
options:
- 1.0.2 (Default)
- 1.0.3 (Edge)
default: 0
validations:
required: true
- type: dropdown
id: browsers
attributes:
label: What browsers are you seeing the problem on?
multiple: true
options:
- Firefox
- Chrome
- Safari
- Microsoft Edge
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
render: shell
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://example.com).
options:
- label: I agree to follow this project's Code of Conduct
required: true
name: Bug Report
description: File a bug report.
title: "[Bug]: "
labels: ["bug", "triage"]
projects: ["octo-org/1", "octo-org/44"]
assignees:
- octocat
type: bug
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: input
id: contact
attributes:
label: Contact Details
description: How can we get in touch with you if we need more info?
placeholder: ex. email@example.com
validations:
required: false
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
placeholder: Tell us what you see!
value: "A bug happened!"
validations:
required: true
- type: dropdown
id: version
attributes:
label: Version
description: What version of our software are you running?
options:
- 1.0.2 (Default)
- 1.0.3 (Edge)
default: 0
validations:
required: true
- type: dropdown
id: browsers
attributes:
label: What browsers are you seeing the problem on?
multiple: true
options:
- Firefox
- Chrome
- Safari
- Microsoft Edge
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
render: shell
- type: checkboxes
id: terms
attributes:
label: Code of Conduct
description: By submitting this issue, you agree to follow our [Code of Conduct](https://example.com).
options:
- label: I agree to follow this project's Code of Conduct
required: true
Sintaxis de nivel superior
Todos los archivos de configuración del formulario de incidencias deben comenzar con pares clave-valor name, description y body.
name: description: body:
name:
description:
body:
Puedes configurar las siguientes claves de nivel superior para cada formulario de incidencia.
| Clave | Descripción | Obligatorio | Tipo |
|---|---|---|---|
name | Un nombre para la plantilla de formato de propuesta. Debe ser único entre el resto de las plantillas, incluidas las plantillas de lenguaje de marcado. | Obligatorio | Cadena |
description | Una descripción para la plantilla de formato de propuesta, la cual aparece en la interfaz de elección de plantilla. | Obligatorio | Cadena |
body | Definición de los tipos de entrada en el formato. | Obligatorio | Array |
assignees | Las personas que se asignarán automáticamente a las propuestas que se crearán con esta plantilla. | Opcionales | Arreglo o secuencia delimitada por comas |
labels | Las etiquetas que se agregarán automáticamente a las propuestas que se crearán con esta plantilla. Si todavía no hay ninguna etiqueta en el repositorio, no se agregará automáticamente a la incidencia. | Opcionales | Arreglo o secuencia delimitada por comas |
title | Un título predeterminado que se prellenará en el formulario de presentación de incidencias. | Opcionales | Cadena |
type | Tipo de problema que se agregará automáticamente a los problemas creados con esta plantilla. Los tipos de problema se definen en el nivel de organización y se pueden usar para crear una sintaxis compartida entre repositorios. | Opcionales | Cadena |
projects | Proyectos a los que se añadirá automáticamente cualquier incidencia creada con esta plantilla. El formato de esta clave es PROJECT-OWNER/PROJECT-NUMBER. > [!NOTE] La persona que abre la incidencia debe tener permisos de escritura para los proyectos especificados. Si no deseas que los usuarios que usen esta plantilla tengan acceso de escritura, considera la posibilidad de habilitar el flujo de trabajo de adición automática del proyecto. Para más información, consulta Incorporación automática de artículos. | Opcionales | Arreglo o secuencia delimitada por comas |
Para conocer los tipos de entrada body disponibles y su sintaxis, consulta Sintaxis para el esquema de formulario de GitHub.
Convertir una plantilla de incidencia en Markdown en una plantilla de formulario de incidencia en YAML
Puedes utilizar plantillas de problemas tanto de Markdown como de YAML en tu repositorio. Si quieres convertir una plantilla de propuesta con lenguaje de marcado en una plantilla de formato de propuesta YAML, debes crear un archivo YAML nuevo para definir el formato de la propuesta. Puedes transponer manualmente una plantilla de problema de Markdown a un formulario de problema YAML. Para más información, consulta Configurar las plantillas de reporte de problemas para tu repositorio.
Si quieres utilizar el mismo nombre de archivo para tu formato de propuesta YAML, debes borrar la plantilla de propuesta en lenguaje de marcado cuando confirmes el archivo nuevo en tu repositorio.
A continuación, puedes encontrar un ejemplo de plantilla de incidencias en Markdown y una plantilla de formulario de incidencias en YAML correspondiente.
Plantilla de propuesta de lenguaje de marcado
--- name: 🐞 Bug about: File a bug/issue title: '[BUG] <title>' labels: Bug, Needs Triage assignees: '' --- <!-- Note: Please search to see if an issue already exists for the bug you encountered. --> ### Current Behavior: <!-- A concise description of what you're experiencing. --> ### Expected Behavior: <!-- A concise description of what you expected to happen. --> ### Steps To Reproduce: <!-- Example: steps to reproduce the behavior: 1. In this environment... 1. With this config... 1. Run '...' 1. See error... --> ### Environment: <!-- Example: - OS: Ubuntu 20.04 - Node: 13.14.0 - npm: 7.6.3 --> ### Anything else: <!-- Links? References? Anything that will give us more context about the issue that you are encountering! -->
---
name: 🐞 Bug
about: File a bug/issue
title: '[BUG] <title>'
labels: Bug, Needs Triage
assignees: ''
---
<!--
Note: Please search to see if an issue already exists for the bug you encountered.
-->
### Current Behavior:
<!-- A concise description of what you're experiencing. -->
### Expected Behavior:
<!-- A concise description of what you expected to happen. -->
### Steps To Reproduce:
<!--
Example: steps to reproduce the behavior:
1. In this environment...
1. With this config...
1. Run '...'
1. See error...
-->
### Environment:
<!--
Example:
- OS: Ubuntu 20.04
- Node: 13.14.0
- npm: 7.6.3
-->
### Anything else:
<!--
Links? References? Anything that will give us more context about the issue that you are encountering!
-->
Plantilla de formulario de incidencias YAML
name: 🐞 Bug
description: File a bug/issue
title: "[BUG] <title>"
labels: ["Bug", "Needs Triage"]
body:
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Current Behavior
description: A concise description of what you're experiencing.
validations:
required: false
- type: textarea
attributes:
label: Expected Behavior
description: A concise description of what you expected to happen.
validations:
required: false
- type: textarea
attributes:
label: Steps To Reproduce
description: Steps to reproduce the behavior.
placeholder: |
1. In this environment...
1. With this config...
1. Run '...'
1. See error...
validations:
required: false
- type: textarea
attributes:
label: Environment
description: |
examples:
- **OS**: Ubuntu 20.04
- **Node**: 13.14.0
- **npm**: 7.6.3
value: |
- OS:
- Node:
- npm:
render: markdown
validations:
required: false
- type: textarea
attributes:
label: Anything else?
description: |
Links? References? Anything that will give us more context about the issue you are encountering!
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
name: 🐞 Bug
description: File a bug/issue
title: "[BUG] <title>"
labels: ["Bug", "Needs Triage"]
body:
- type: checkboxes
attributes:
label: Is there an existing issue for this?
description: Please search to see if an issue already exists for the bug you encountered.
options:
- label: I have searched the existing issues
required: true
- type: textarea
attributes:
label: Current Behavior
description: A concise description of what you're experiencing.
validations:
required: false
- type: textarea
attributes:
label: Expected Behavior
description: A concise description of what you expected to happen.
validations:
required: false
- type: textarea
attributes:
label: Steps To Reproduce
description: Steps to reproduce the behavior.
placeholder: |
1. In this environment...
1. With this config...
1. Run '...'
1. See error...
validations:
required: false
- type: textarea
attributes:
label: Environment
description: |
examples:
- **OS**: Ubuntu 20.04
- **Node**: 13.14.0
- **npm**: 7.6.3
value: |
- OS:
- Node:
- npm:
render: markdown
validations:
required: false
- type: textarea
attributes:
label: Anything else?
description: |
Links? References? Anything that will give us more context about the issue you are encountering!
Tip: You can attach images or log files by clicking this area to highlight it and then dragging files in.
validations:
required: false
Información adicional
-
[YAML](https://yaml.org/) -
[Errores de validación comunes al crear formatos de propuesta](/communities/using-templates-to-encourage-useful-issues-and-pull-requests/common-validation-errors-when-creating-issue-forms)