Skip to main content

이 버전의 GitHub Enterprise는 다음 날짜에 중단되었습니다. 2024-09-25. 중요한 보안 문제에 대해서도 패치 릴리스가 이루어지지 않습니다. 더 뛰어난 성능, 향상된 보안, 새로운 기능을 위해 최신 버전의 GitHub Enterprise Server로 업그레이드합니다. 업그레이드에 대한 도움말은 GitHub Enterprise 지원에 문의하세요.

GitHub 양식 스키마 구문

GitHub의 양식 스키마를 사용하여 지원되는 기능에 대한 양식을 구성할 수 있습니다.

Note

GitHub의 양식 스키마는 현재 베타 버전이며 변경될 수 있습니다.

GitHub의 양식 스키마 정보

GitHub의 양식 스키마를 사용하여 지원되는 기능에 대한 양식을 구성할 수 있습니다. 자세한 내용은 "리포지토리에 대한 문제 템플릿 구성"을(를) 참조하세요.

양식은 사용자 입력을 요청하기 위한 요소 집합입니다. 양식 요소의 배열인 YAML 양식 정의를 만들어 양식을 구성할 수 있습니다. 각 양식 요소는 요소의 형식, 요소의 속성, 요소에 적용할 제약 조건을 결정하는 키-값 쌍 집합입니다. 일부 키의 경우 값은 키-값 쌍의 또 다른 집합입니다.

예를 들어 다음 양식 정의에는 사용자의 운영 체제를 제공하기 위한 텍스트 영역, 사용자가 실행 중인 소프트웨어 버전을 선택하기 위한 드롭다운 메뉴, 사용 규정을 승인하는 확인란, 양식을 완료한 사용자에게 감사하는 Markdown 등 네 가지 양식 요소가 포함되어 있습니다.

YAML
- type: textarea
  attributes:
    label: Operating System
    description: What operating system are you using?
    placeholder: "Example: macOS Big Sur"
    value: operating system
  validations:
    required: true
- type: dropdown
  attributes:
    label: Version
    description: What version of our software are you running?
    multiple: false
    options:
      - 1.0.2 (Default)
      - 1.0.3 (Edge)
  validations:
    required: true
- type: checkboxes
  attributes:
    label: Code of Conduct
    description: The Code of Conduct helps create a safe space for everyone. We require
      that everyone agrees to it.
    options:
      - label: I agree to follow this project's [Code of Conduct](link/to/coc)
        required: true
- type: markdown
  attributes:
    value: "Thanks for completing our form!"

구성

각 양식 요소에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
type정의하려는 요소의 형식입니다.문자열
  • checkboxes
  • dropdown
  • input
  • markdown
  • textarea
idtypemarkdown으로 설정된 경우를 제외하고 요소의 식별자입니다. 영숫자, -, _만 사용할 수 있습니다. 양식 정의에서 고유해야 합니다. 제공되는 경우 id는 URL 쿼리 매개 변수 미리 채우기의 필드에 대한 정규 식별자입니다.문자열
attributes요소의 속성을 정의하는 키-값 쌍 집합입니다.지도
validations요소에 대한 제약 조건을 설정하는 키-값 쌍 집합입니다.지도

다음 유형의 양식 요소 중에서 선택할 수 있습니다. 각 형식에는 고유한 특성 및 유효성 검사가 있습니다.

Type설명
markdown사용자에게 추가 컨텍스트를 제공하기 위해 양식에 표시되지만 제출되지 않은 Markdown 텍스트입니다.
textarea여러 줄 텍스트 필드.
input단일 줄 텍스트 필드.
dropdown드롭다운 메뉴.
checkboxes확인란 집합.

markdown

markdown 요소를 사용하여 사용자에게 추가 컨텍스트를 제공하지만 제출되지 않는 Markdown을 양식에 표시할 수 있습니다.

markdown에 대한 특성

attributes 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
value렌더링되는 텍스트. Markdown 서식 지정이 지원됩니다.문자열

Tip

YAML 처리는 해시 기호를 주석으로 처리합니다. Markdown 헤더를 삽입하려면 텍스트를 따옴표로 묶습니다.

여러 줄 텍스트의 경우 파이프 연산자를 사용할 수 있습니다.

markdown의 예

YAML
body:
- type: markdown
  attributes:
    value: "## Thank you for contributing to our project!"
- type: markdown
  attributes:
    value: |
      Thanks for taking the time to fill out this bug report.

textarea

textarea 요소를 사용하여 양식에 여러 줄 텍스트 필드를 추가할 수 있습니다. 기여자는 textarea 필드에 파일을 첨부할 수도 있습니다.

textarea에 대한 특성

attributes 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
label양식에도 표시되는 예상 사용자 입력에 대한 간략한 설명입니다.문자열
description양식에 표시되는 컨텍스트 또는 지침을 제공하는 텍스트 영역에 대한 설명입니다.문자열빈 문자열
placeholder비어 있을 때 텍스트 영역에 렌더링되는 반투명 자리 표시자입니다.문자열빈 문자열
value텍스트 영역에 미리 채워진 텍스트입니다.문자열
render값이 제공되면 제출된 텍스트의 서식이 코드 블록으로 지정됩니다. 이 키를 제공하면 파일 첨부 파일 또는 Markdown 편집을 위해 텍스트 영역이 확장되지 않습니다.문자열GitHub에 알려진 언어입니다. 자세한 내용은 언어 YAML 파일을 참조하세요.

textarea에 대한 유효성 검사

validations 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
required요소가 완료될 때까지 양식 제출을 방지합니다. 퍼블릭 리포지토리에서만 사용 가능.Booleanfalse

textarea의 예

YAML
body:
- type: textarea
  id: repro
  attributes:
    label: Reproduction steps
    description: "How do you trigger this bug? Please walk us through it step by step."
    value: |
      1.
      2.
      3.
      ...
    render: bash
  validations:
    required: true

input

input 요소를 사용하여 양식에 단일 줄 텍스트 필드를 추가할 수 있습니다.

input에 대한 특성

attributes 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
label양식에도 표시되는 예상 사용자 입력에 대한 간략한 설명입니다.문자열
description양식에 표시되는 컨텍스트 또는 지침을 제공하는 필드에 대한 설명입니다.문자열빈 문자열
placeholder필드가 비어 있을 때 렌더링되는 반투명 자리 표시자입니다.문자열빈 문자열
value필드에 미리 채워진 텍스트입니다.문자열

input에 대한 유효성 검사

validations 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
required요소가 완료될 때까지 양식 제출을 방지합니다. 퍼블릭 리포지토리에서만 사용 가능.Booleanfalse

input의 예

YAML
body:
- type: input
  id: prevalence
  attributes:
    label: Bug prevalence
    description: "How often do you or others encounter this bug?"
    placeholder: "Example: Whenever I visit the personal account page (1-2 times a week)"
  validations:
    required: true

dropdown 요소를 사용하여 양식에 드롭다운 메뉴를 추가할 수 있습니다.

dropdown에 대한 특성

attributes 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
label양식에 표시되는 예상 사용자 입력에 대한 간략한 설명입니다.문자열
description양식에 표시되는 추가 컨텍스트 또는 지침을 제공하기 위한 드롭다운에 대한 설명입니다.문자열빈 문자열
multiple사용자가 둘 이상의 옵션을 선택할 수 있는지 여부를 결정합니다.부울false
options사용자가 선택할 수 있는 옵션 배열입니다. 비워 둘 수 없으며 모든 선택 항목은 고유해야 합니다.문자열 ARRAY
defaultoptions ARRAY에서 미리 선택된 옵션의 INDEX입니다. 기본 옵션을 지정하면 "None" 또는 "n/a"를 옵션으로 포함할 수 없습니다.정수

dropdown에 대한 유효성 검사

validations 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
required요소가 완료될 때까지 양식 제출을 방지합니다. 퍼블릭 리포지토리에서만 사용 가능.Booleanfalse

dropdown의 예

YAML
body:
- type: dropdown
  id: download
  attributes:
    label: How did you download the software?
    options:
      - Built from source
      - Homebrew
      - MacPorts
      - apt-get
  validations:
    required: true

checkboxes

checkboxes 요소를 사용하여 양식에 체크박스 세트를 추가할 수 있습니다.

checkboxes에 대한 특성

attributes 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
label양식에 표시되는 예상 사용자 입력에 대한 간략한 설명입니다.문자열
description양식에 표시되는 확인란 집합에 대한 설명입니다. Markdown 서식 지정을 지원합니다.문자열빈 문자열
options사용자가 선택할 수 있는 확인란의 배열입니다. 구문의 경우 아래를 참조하세요.배열

options 배열의 각 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값옵션
label양식에 표시되는 옵션의 식별자입니다. Markdown은 굵게 또는 기울임꼴 텍스트 서식 지정과 하이퍼링크에 대해 지원됩니다.문자열
required요소가 완료될 때까지 양식 제출을 방지합니다. 퍼블릭 리포지토리에서만 사용 가능.Booleanfalse

checkboxes에 대한 유효성 검사

validations 키 값에 대해 다음 키를 설정할 수 있습니다.

설명필수Type기본값유효한 값
required요소가 완료될 때까지 양식 제출을 방지합니다. 퍼블릭 리포지토리에서만 사용 가능.Booleanfalse

checkboxes의 예

YAML
body:
- type: checkboxes
  id: operating-systems
  attributes:
    label: Which operating systems have you used?
    description: You may select more than one.
    options:
      - label: macOS
      - label: Windows
      - label: Linux

추가 참고 자료