기능 플래그 뒤에 배포된 문서 기능

GitLab은 기능 플래그를 사용하여 자체 기능의 배포를 진행합니다.

기능 플래그의 상태가 변경되면 해당 변경을 한 개발자는 문서를 업데이트해야 합니다.

기능 플래그 뒤에 기능을 문서화해야 하는 경우

사용하는 코드베이스에 도입되는 모든 기능은 비활성화된 플래그 뒤에 있더라도 문서화해야 합니다. 자세한 내용은 이 결정으로 이어진 논의를 참조하세요. 실험 및 베타 기능은 일반적으로 플래그 뒤에 있으며 이러한 기능도 문서화해야 합니다. 자세한 내용은 실험 또는 베타 기능 문서화를 참조하세요.

기능이 여러 병합 요청에서 구현된 경우 기술 작성자와 계획을 상의하세요.

기능: - GitLab의 여러 영역에 걸쳐 변경 사항을 가져옵니다. - 많은 병합 요청을 포함합니다. - 문서 페이지가 몇 개 이상 영향을 받습니다. - 기능 플래그가 테스트를 위해 활성화된 상태에서 완전히 기능을 하지 않습니다.

PM, EM 및 작성자는 문서 작업이 할당되고 일정이 잡혀 있는지 확인해야 합니다.

코드베이스의 모든 기능 플래그는 문서화되어 있습니다. 기능이 완전히 기능적이지 않거나 다른 방식으로 문서화되지 않은 경우에도 해당합니다.

기능 플래그 문서 추가 방법

기능 플래그를 문서화하려면:

오퍼링

오퍼링을 문서화할 때, 자체 관리에서 비활성화된 기능의 경우 GitLab Dedicated를 기능의 제공으로 나열하지 마세요.

히스토리 텍스트 추가

플래그의 상태가 변경될 때(예: 기본적으로 비활성화된 상태에서 기본적으로 활성화된 상태로), 변경 내용을 히스토리에 추가하세요.

가능한 히스토리 항목은 다음과 같습니다:

> - [GitLab X.X에서](../../administration/feature_flags.md) `flag_name`이라는 이름의 플래그로 도입. 기본으로 비활성화됨.
> - [GitLab X.X에서 GitLab.com에 활성화됨](https://issue-link).
> - [GitLab X.X에서 자체 관리 및 GitLab Dedicated에서 활성화됨](https://issue-link).
> - [GitLab X.X에서 GitLab.com, 자체 관리 및 GitLab Dedicated에서 활성화됨](https://issue-link).
> - [GitLab X.Y에서 일반적으로 사용 가능](https://issue-link). 기능 플래그 `flag_name`이 제거됨.

이러한 항목은 모든 시나리오에 적합하지 않을 수 있습니다. 예를 들어, 플래그가 그룹, 프로젝트 또는 특정 사용자 서브셋에 대해만 활성화되었을 수 있습니다. 이 경우 다음과 같은 히스토리 항목을 사용할 수 있습니다:

> - [GitLab X.X에서](https://issue-link) GitLab.com에서 일부 사용자의 서브셋에 대해 활성화됨.

플래그 참고 추가

이 기능 플래그 참고를 토픽의 시작 부분에 추가하고 히스토리 바로 아래에 추가합니다.

마지막 문장(사용하기에 준비됨)은 선택 사항입니다.

플래그:
이 기능의 가용성은 기능 플래그로 제어됩니다.
자세한 내용은 히스토리를 참조하세요.
이 기능은 테스트용으로 사용 가능하지만 사용 준비가 되지 않았습니다.

이 참고는 GitLab 문서 사이트에 다음과 같이 렌더링됩니다:

플래그: 이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요. 이 기능은 테스트용으로 사용 가능하지만 사용 준비가 되지 않았습니다.

히스토리 예시

다음 예시는 기능 플래그의 진행을 보여줍니다. 모든 변경에 대해 히스토리를 업데이트하세요:

> - [GitLab 13.7에서](../../administration/feature_flags.md) `forti_token_cloud`라는 이름의 플래그로 도입. 기본으로 비활성화됨.

플래그:
이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요.

GitLab.com에서 기본적으로 활성화되었을 때:

> - [GitLab 13.7에서](../../administration/feature_flags.md) `forti_token_cloud`라는 이름의 플래그로 도입. 기본으로 비활성화됨.
> - [GitLab 13.8에서](https://issue-link) GitLab.com에 활성화됨.

플래그:
이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요.

모든 제공에 대해 기본적으로 활성화되었을 때:

> - [GitLab 13.7에서](../../administration/feature_flags.md) `forti_token_cloud`라는 이름의 플래그로 도입. 기본으로 비활성화됨.
> - [GitLab 13.8에서](https://issue-link) GitLab.com에 활성화됨.
> - [GitLab 13.9에서](https://issue-link) 자체 관리 및 GitLab Dedicated에서 활성화됨.

플래그:
이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참조하세요.

플래그가 삭제된 경우 일반적으로 사용 가능 항목을 추가하세요. 또한 플래그 참고도 삭제해야 합니다:

> - [GitLab 13.7에서](../../administration/feature_flags.md) `forti_token_cloud`라는 이름의 플래그로 도입. 기본으로 비활성화됨.
> - [GitLab 13.8에서](https://issue-link) GitLab.com에 활성화됨.
> - [GitLab 13.9에서](https://issue-link) 자체 관리 및 GitLab Dedicated에서 활성화됨.
> - [GitLab 14.0에서](https://issue-link) 일반적으로 사용 가능. 기능 플래그 `forti_token_cloud` 제거.

긴 히스토리 간소화

히스토리는 길어질 수 있지만 때로는 항목을 간소화하거나 삭제할 수 있습니다.

동일한 릴리스에서 발생한 경우 항목을 결합하십시오:

  • 이전: markdown > - [GitLab 14.2에서](../../administration/feature_flags.md) `ci_include_rules`라는 이름의 플래그로 도입. 기본으로 비활성화됨. > - [GitLab 14.3에서](https://issue-link) GitLab.com, 자체 관리 및 GitLab Dedicated에서 활성화됨.

  • 이후: markdown > - [GitLab 14.2에서](../../administration/feature_flags.md) `ci_include_rules`라는 이름의 플래그로 도입. 기본으로 비활성화됨. > - [GitLab 14.3에서](https://issue-link) GitLab.com, 자체 관리 및 GitLab Dedicated에서 활성화됨.

GitLab.com에 대해 활성화된 항목은 해당 기능이 모든 제공에서 기본적으로 활성화되고 플래그가 제거된 경우에만 삭제하십시오:

  • 이전: markdown > - [GitLab 15.6에서](../../administration/feature_flags.md) `ci_hooks_pre_get_sources_script`라는 이름의 플래그로 도입. 기본으로 비활성화됨. > - [GitLab 15.7에서](https://issue-link) GitLab.com에 활성화됨. > - [GitLab 15.8에서](https://issue-link) 자체 관리 및 GitLab Dedicated에서 활성화됨. > - [GitLab 15.9에서](https://issue-link) 일반적으로 사용 가능. 기능 플래그 `ci_hooks_pre_get_sources_script` 제거.

  • 이후: markdown > - [GitLab 15.6에서](../../administration/feature_flags.md) `ci_hooks_pre_get_sources_script`라는 이름의 플래그로 도입. 기본으로 비활성화됨. > - [GitLab 15.8에서](https://issue-link) 자체 관리 및 GitLab Dedicated에서 활성화됨. > - [GitLab 15.9에서](https://issue-link) 일반적으로 사용 가능. 기능 플래그 `ci_hooks_pre_get_sources_script` 제거.