Metadata

각 문서 Markdown 페이지에는 YAML 프런트 메터가 포함되어 있습니다. 메타데이터의 모든 값은 문자열로 취급되며 문서 웹사이트에만 사용됩니다.

단계 및 그룹 메타데이터

각 페이지는 해당하는 단계 및 그룹과 관련된 메타데이터를 가져야 하며 정보 블록도 있어야 합니다. 예를 들어,

---
stage: 예제 단계
group: 예제 그룹
info: 이 페이지와 관련된 단계/그룹에 할당된 기술 작성자를 찾으려면 https://handbook.gitlab.com/handbook/product/ux/technical-writing/#assignments 를 참조하세요.
---

메타데이터를 채우려면 다음 정보를 포함해야 합니다:

  • stage: 페이지의 대부분 콘텐츠가 속한 단계.
  • group: 페이지의 대부분 콘텐츠가 속한 그룹.
  • info: 페이지의 단계와 그룹에 관련된 기술 작성자를 찾는 방법.

예외

/development 디렉터리의 문서는 다음 메타데이터를 받습니다:

---
stage: 예제 단계
group: 예제 그룹
info: 최소한 Maintainer 역할을 가진 사용자는 이 콘텐츠의 업데이트를 Merge할 수 있습니다. 자세한 내용은 https://docs.gitlab.com/ee/development/development_processes.html#development-guidelines-review 를 참조하세요.
---

/solutions 디렉터리의 문서는 다음 메타데이터를 받습니다:

---
stage: 솔루션 아키텍처
group: 솔루션 아키텍처
info: 이 페이지는 솔루션 아키텍처 팀 소유입니다.
---

설명 메타데이터

description 태그:

  • 문서 홈페이지에 텍스트를 채우는 데 사용됩니다.
  • 소셜 미디어 미리보기에 표시됩니다.
  • 검색 결과 스니펫에 사용될 수 있습니다.

Use GitLab 및 그 하위 수준과 같은 최상위 페이지의 경우, 설명은 명사 디렉터리입니다. 예를 들어, 조직 설정의 경우, 설명은 사용자, 그룹, 네임스페이스, SSH 키입니다.

기타 페이지의 경우, 설명은 활발하게 유지되지 않습니다. 그러나 필요한 경우 페이지에 대한 간단한 설명을 추가하려면 Google Best practices for creating quality meta descriptions을(를) 참조하세요.

추가 메타데이터

다음 메타데이터는 선택 사항이며 활발하게 유지되지 않습니다.

  • feedback: “도움말 및 피드백” 푸터에 포함하지 않으려면 false로 설정합니다.
  • noindex: 페이지가 검색 엔진에 의해 색인되는 것을 방지하려면 false로 설정합니다.
  • redirect_to: 리디렉트를 제어하는 데 사용됩니다. 자세한 내용은 GitLab documentation를 참조하세요.
  • searchbar: 페이지 헤더에 검색 표시줄을 포함하지 않으려면 false로 설정합니다.
  • toc: “이 페이지에서” 탐색을 포함하지 않으려면 false로 설정합니다.

TW 메타데이터 일괄 업데이트

CODEOWNERS 파일에는 파일 디렉터리과 관련된 기술 작성자가 포함되어 있습니다.

Merge Request에 문서가 포함될 때 CODEOWNERS 파일의 정보는 다음을 결정합니다:

  • 승인자 섹션의 사용자 디렉터리.
  • 커뮤니티 기여에 대해 GitLab 봇이 기술 작성자를 호출합니다.

CODEOWNERS 파일을 업데이트하기 위해 Rake 작업을 사용할 수 있습니다. CODEOWNERS 파일을 업데이트하는 방법을 참조하세요.

CODEOWNERS 파일 업데이트

그룹이나 TW assignments 변경이 발생하면 CODEOWNERS 파일을 업데이트해야 합니다. 이를 위해 codeowners.rake Rake 작업을 실행합니다. 이 작업은 doc 디렉터리의 모든 파일을 확인하여 메타데이터를 읽고 codeowners.rake 파일의 정보를 사용하여 CODEOWNERS 파일을 채웁니다.

CODEOWNERS 파일을 업데이트하려면:

  1. 단계 및 그룹 메타데이터를 필요한 경우 영향을 받는 문서 페이지에 업데이트해야 합니다. 변경 사항이 많은 경우 별도의 MR에서 이 단계를 수행할 수 있습니다.
  2. 변경 내용으로 codeowners.rake 파일을 업데이트합니다.
  3. gitlab 리포지터리의 루트로 이동합니다.
  4. 다음 명령을 사용하여 Rake 작업을 실행합니다: bundle exec rake tw:codeowners
  5. CODEOWNERS 파일의 변경 사항을 검토합니다.
  6. 모든 변경 사항을 추가하고 커밋하고 브랜치를 origin에 푸시합니다.
  7. 기술 작성 매니저에게 리뷰를 할당하는 Merge Request을 생성합니다.

codeowners.rake 파일을 업데이트할 때:

  • 하나의 그룹에 대해 여러 작성자를 지정하려면 작성자 이름 사이에 공백을 사용합니다. 파일은 두 작성자에게 모두 할당됩니다.

    CodeOwnerRule.new('그룹 이름', '@작성자1 @작성자2'),
    
    • 동일한 그룹 내에서 다른 디렉터리의 문서에 대해 다른 작성자를 지정하려면 path 매개변수를 사용하여 디렉터리를 지정합니다:

      CodeOwnerRule.new('그룹 이름', ->(path) { path.start_with?('/doc/user') ? '@작성자1' : '@작성자2' }),
      

      이 예에서 작성자1/doc/user에 관련된 파일에 대한 코드 소유자입니다. 다른 모든 경우에는 작성자2가 코드 소유자로 지정됩니다. 예시는 MR 127903를 참조하세요.

  • 할당된 작성자가 없는 그룹의 경우 파일에 그룹 이름을 포함하고 해당 줄을 주석 처리합니다.

    # CodeOwnerRule.new('그룹 이름', ''),