- GitLab Flavored Markdown과 표준 Markdown의 차이점
- Markdown 및 접근성
- 줄 바꿈
- 강조
- 제목
- 링크
- 멀티미디어
- 목록
- 인용구
- 코드 스팬 및 블록
- 다이어그램 및 플로차트
- 수학
- 목차
- 색상
- 이모지
- Front matter
- 이스케이프 문자
- 각주
- 수평선
- 인라인 HTML
- 위키별 Markdown
- GitLab 특정 참조
- 참조
GitLab Flavored Markdown (GLFM)
GitLab UI에 텍스트를 입력하면 GitLab은 해당 텍스트가 Markdown 언어로 작성되었다고 가정합니다. 텍스트는 일련의 스타일과 함께 렌더링됩니다. 이러한 스타일을 GitLab Flavored Markdown이라고 합니다.
예를 들어, Markdown에서 정렬되지 않은 목록은 다음과 같이 보입니다:
- Cat
- Dog
- Turtle
이 목록이 렌더링되면 다음과 같이 보입니다:
- Cat
- Dog
- Turtle
참고: 이 Markdown 사양은 GitLab 전용이기 때문에 GitLab에서 실제로 보이는 스타일로 확인해야 합니다.
GitLab Flavored Markdown을 다음 영역에서 사용할 수 있습니다:
- 코멘트
- 이슈
- 에픽
- 병합 요청
- 마일스톤
- 스니펫(스니펫은
.md
확장자로 명명되어야 함) - 위키 페이지
- 저장소 내의 Markdown 문서
또한 GitLab에서 다른 서식 있는 파일도 사용할 수 있습니다. 이를 위해 종속성을 설치해야 할 수 있습니다.
더 많은 정보는 gitlab-markup
gem 프로젝트를 참조하세요.
웹 IDE에서 GitLab Flavored Markdown 미리보기 지원이 이슈 645로 제안되었습니다.
GitLab Flavored Markdown과 표준 Markdown의 차이점
GitLab Flavored Markdown은 다음으로 구성되어 있습니다:
- CommonMark 사양을 기반으로 한 핵심 Markdown 기능
- GitHub Flavored Markdown에서 확장된 기능
- GitLab을 위해 특별히 개발된 확장 기능
모든 표준 Markdown 형식은 GitLab에서 예상대로 작동해야 합니다. 일부 표준 기능은 표준 사용에 영향을주지 않으면서 추가 기능과 함께 확장됩니다.
다음과 같은 기능은 표준 Markdown에는 없습니다:
HEX
,RGB
또는HSL
로 작성된 색상 칩- 다이어그램 및 플로우차트
- 이모지
- 각주
- 프런트 매터
- GitLab 특정 참조
- 인라인 차이
- LaTeX로 작성된 수학식과 기호
- 취소선
- 목차
- 테이블
- 작업 목록
- 위키별 Markdown
다음 기능은 표준 Markdown에서 확장되었습니다:
표준 Markdown | GitLab에서의 확장 Markdown |
---|---|
블록 인용 | 여러 줄 블록 인용 |
코드 블록 | 색칠된 코드 및 구문 강조 |
헤딩 | 링크 가능한 헤딩 ID |
이미지 | 임베디드 비디오 및 오디오 |
링크 | URL 자동 링크 |
Markdown 및 접근성
GitLab Flavored Markdown을 사용하면 디지털 콘텐츠를 작성하게 됩니다. 이러한 콘텐츠는 대상 그룹에게 가능한 한 접근성 있어야 합니다. 다음 목록은 완전하지는 않지만, GitLab Flavored Markdown의 스타일 중 몇 가지에 대한 지침을 제공합니다:
접근성 있는 헤딩
논리적인 제목 구조를 만들기 위해 헤딩 형식을 사용하세요.
페이지의 제목 구조는 좋은 목차처럼 의미가 있어야 합니다.
페이지에는 h1
요소가 하나만 있고, 제목 수준이 건너뛰어지지 않으며 올바르게 중첩되어 있는지 확인하세요.
접근성 있는 테이블
테이블의 접근성과 검색 가능성을 유지하기 위해 테이블에는 빈 셀이 없어야 합니다. 셀에 의미있는 값이 없는 경우 “해당 없음” 또는 “없음”을 고려하세요.
접근성 있는 이미지 및 비디오
[대체 텍스트]
에 이미지나 비디오를 설명하세요. 설명은 정확하고 간결하며 고유해야 합니다.
설명에 “이미지” 또는 “동영상”을 사용하지 마세요. 자세한 내용은 WebAim Alternative Text를 참조하세요.
줄 바꿈
바로 이전 텍스트가 두 번의 새 줄로 끝나면(두 번의 Enter를 누른 경우), 줄 바꿈이 삽입됩니다(새 문단이 시작됨). 예를 들어, 만약 한 번의 새 줄만 사용한다면(한 번의 Enter를 누른 경우) 다음 문장은 이전 문단의 일부로 남게 됩니다. 글이 너무 길게 나뉘어지는 것을 막으려면 이 접근법을 사용하여 수정이 가능한 상태로 유지하세요:
여기에서 시작할 텍스트 줄입니다.
위의 텍스트에서 두 번의 새 줄로 분리된 이 긴 줄은 *독립적인 문단*입니다.
이 텍스트 역시 독립적인 문단입니다만...
이 두 줄은 각각 개별적인 새 줄로 분리되지 않았기 때문에
그것들은 이전 줄과 함께 같은 문단으로 따라갑니다.
여기에서 시작할 텍스트 줄입니다.
위의 텍스트에서 두 번의 새 줄로 분리된 이 긴 줄은 독립적인 문단입니다.
이 텍스트 역시 독립적인 문단입니다만… 이 두 줄은 각각 개별적인 새 줄로 분리되지 않았기 때문에 그것들은 이전 줄과 함께 같은 문단으로 따라갑니다.
새 줄
GitLab Flavored Markdown은 Markdown 사양을 준수하여 문단 및 줄 바꿈을 다룹니다.
문단은 하나 이상의 연속된 텍스트 줄로 이루어져 있으며 하나 이상의 공백 줄(첫 번째 문단 끝에 두 줄 바꿈)로 구분됩니다. (위 설명 참조)
줄 바꿈이나 소프트 리턴을 더 세밀하게 제어하려면? 라인 끝에 백슬래시로 끝내거나, 두 개 이상의 스페이스를 추가합니다. 연속된 두 줄 바꿈은 새로운 문단을 만들며 그 사이에 공백 줄이 있습니다.
첫 번째 문단.
같은 문단에서 다른 줄.
같은 문단에서 세 번째 줄, 이번에는 두 개의 스페이스로 끝냅니다.
첫 번째 문단 바로 밑에 새로운 줄.
두 번째 문단.
다른 줄, 이번에는 백슬래시로 끝냅니다.
이전 백슬래시로 새로운 줄이 나옵니다.
강조
GitLab에서 이 주제를 렌더링로 확인하세요.
텍스트에 강조를 표현하는 여러 가지 방법이 있습니다. 이탤릭체, 굵은체, 취소선 또는 이러한 강조 스타일들을 결합할 수 있습니다.
예시:
강조, 이탤릭체는 _별표_ 또는 *언더스코어*를 사용합니다.
강조, 굵은체는 **별표**나 **언더스코어**를 사용합니다.
강조, 별표와 *언더스코어*를 **함께** 사용합니다.
물결표로 취소선을 그을 수 있습니다. ~~이것을 제거하세요.~~
강조, 이탤릭체는 별표 또는 언더스코어를 사용합니다.
강조, 굵은체는 별표나 언더스코어를 사용합니다.
강조, 별표와 언더스코어를 함께 사용합니다.
물결표로 취소선을 그을 수 있습니다. 이것을 제거하세요.
단어 내 및 단어 중 강조
GitLab에서 이 주제를 렌더링로 확인하세요.
특히 코드 및 여러 언더스코어가 자주 나타나는 이름과 작성할 때 단어의 일부를 기울임체로 만들지 말아야 합니다.
GitLab Flavored Markdown은 단어 안의 여러 개의 밑줄을 무시하여 코드를 처리할 때 더 나은 렌더링을 가능하게 합니다.
perform_complicated_task
do_this_and_do_that_and_another_thing
but*emphasis is_desired \_here*
perform_complicated_task
do_this_and_do_that_and_another_thing
butemphasis is_desired _here
단어의 일부만 강조하려면 여전히 별표로 가능합니다:
perform*complicated*task
do*this*and*do*that*and*another thing
performcomplicatedtask
dothisanddothatandanother thing
인라인 차이
GitLab에서 이 주제를 렌더링로 확인하세요.
인라인 차이 태그를 사용하여 {+ 추가 +}
또는 [- 삭제 -]
를 표시할 수 있습니다.
태그는 중괄호나 대괄호를 사용할 수 있습니다:
- {+ 추가 1 +}
- [+ 추가 2 +}
- {- 삭제 3 -}
- [- 삭제 4 -]
그러나 태그를 혼용할 수는 없습니다:
- {+ 추가 +]
- [+ 추가 +}
- {- 삭제 -]
- [- 삭제 -}
차이의 강조는 `인라인 코드`
와 함께 작동하지 않습니다. 텍스트에 역따옴표 (`
)가 포함되어 있다면 각 역따옴표를 백슬래시로 이스케이프(escape)해야 합니다:
- {+ 그냥 일반 텍스트 +}
- {+ 역따옴표가 `내부`에 있는 텍스트 +}
- {+ 이스케이프된 \`역따옴표\`가 있는 텍스트 +}
제목
#
을 사용하여 1부터 6까지의 제목을 만들 수 있습니다.
# H1
## H2
### H3
#### H4
##### H5
###### H6
H1 및 H2를 위해 대체로 하나의 스타일을 사용할 수도 있습니다:
# Alt-H1
## Alt-H2
제목 ID 및 링크
- 제목 링크 생성이 변경되었습니다 GitLab 17.0에서.
GitLab에서 이 주제를 렌더링로 확인하세요.
모든 Markdown으로 렌더링된 제목에는 자동으로 링크할 수 있는 ID가 부여됩니다. 주석을 제외한 모든 곳에서 이 ID에 대한 링크가 표시되어 이동하여 다른 곳에서 사용할 수 있도록 좀 더 쉽게 만듭니다.
ID는 다음 규칙에 따라 제목 내용에서 생성됩니다:
- 모든 텍스트는 소문자로 변환됩니다.
- 구두점이나 HTML과 같은 비단어 텍스트는 제거됩니다.
- 모든 공백은 하이픈으로 변환됩니다.
- 두 개 이상의 하이픈은 하나로 변환됩니다.
- 이미 생성된 ID가 있는 경우 1부터 시작하는 고유한 증가 번호가 추가됩니다.
예시:
# This heading has spaces in it
## This heading has a :thumbsup: in it
# This heading has Unicode in it: 한글
## This heading has spaces in it
### This heading has spaces in it
## This heading has 3.5 in it (and parentheses)
## This heading has multiple spaces and hyphens
위 제목들은 다음과 같은 링크 ID를 생성합니다:
this-heading-has-spaces-in-it
this-heading-has-a-thumbsup-in-it
this-heading-has-unicode-in-it-한글
this-heading-has-spaces-in-it-1
this-heading-has-spaces-in-it-2
this-heading-has-35-in-it-and-parentheses
this-heading-has--multiple-spaces-and--hyphens
링크
링크를 만드는 두 가지 방법이 있습니다: 인라인 스타일과 참조 스타일. 예를 들어:
- 이 줄은 [인라인 스타일 링크](https://www.google.com)를 보여줍니다.
- 이 줄은 [동일한 디렉토리의 리포지토리 파일에 대한 링크](permissions.md)를 보여줍니다.
- 이 줄은 [파일을 한 단계 상위 디렉토리로 연결하는 상대적인 링크](../index.md)를 보여줍니다.
- 이 줄은 [제목 텍스트도 있는 링크](https://www.google.com "이 링크는 구글로 이동합니다!")를 보여줍니다!
헤딩 ID 앵커 사용:
- 이 줄은 다른 Markdown 페이지에서 섹션에 대한 링크를 [“#” 및 헤딩 ID](permissions.md#project-members-permissions)를 사용하여 보여줍니다.
- 이 줄은 같은 페이지의 다른 섹션에 대한 링크를 [“#” 및 헤딩 ID](#heading-ids-and-links)를 사용하여 보여줍니다.
참조를 사용:
- 이 줄은 [참조 스타일 링크, 아래 참조 참조하세요][임의의 대소문자 구분 없는 참조 텍스트]를 보여줍니다.
- 참조를 사용하여 [참조 스타일 링크 정의에 번호를 사용하세요, 아래 참조 참조하세요][1].
- 또는 비워두고 [링크 텍스트 자체를 사용하세요][], 아래 참조 참조하세요.
나중에 참조 링크를 사용할 수 있음을 보여주는 일부 텍스트.
[임의의 대소문자 구분 없는 참조 텍스트]: https://www.mozilla.org/en-US/
[1]: https://slashdot.org
[링크 텍스트 자체]: https://about.gitlab.com/
- 이 줄은 인라인 스타일 링크를 보여줍니다.
- 이 줄은 동일한 디렉토리의 리포지토리 파일에 대한 링크를 보여줍니다.
- 이 줄은 파일을 한 단계 상위 디렉토리로 연결하는 상대적인 링크를 보여줍니다.
- 이 줄은 제목 텍스트도 있는 링크를 보여줍니다!
헤딩 ID 앵커 사용:
- 이 줄은 다른 Markdown 페이지에서 섹션에 대한 링크를 “#” 및 헤딩 ID를 사용하여 보여줍니다.
- 이 줄은 같은 페이지의 다른 섹션에 대한 링크를 “#” 및 헤딩 ID를 사용하여 보여줍니다.
참조를 사용:
- 이 줄은 참조 스타일 링크, 아래 참조 참조하세요를 보여줍니다.
- 참조를 사용하여 참조 스타일 링크 정의에 번호를 사용하세요, 아래 참조 참조하세요.
- 또는 비워두고 링크 텍스트 자체를 사용하세요, 아래 참조 참조하세요.
나중에 참조 링크를 사용할 수 있음을 보여주는 일부 텍스트.
참고:
상대적인 링크는 위키 페이지의 프로젝트 파일을 참조하거나 프로젝트 파일의 위키 페이지를 참조하는 것을 허용하지 않습니다. 이유는 위키가 항상 GitLab의 별도 Git 리포지토리에 있기 때문입니다. 예를 들어, [참조 스타일 링크](style)
가 위키 Markdown 파일 내에서 링크인 경우에만 링크를 wikis/style
로 지정합니다.
URL 자동 링크
텍스트에 넣는 거의 모든 URL은 자동으로 링크됩니다:
- https://www.google.com
- https://www.google.com
- ftp://ftp.us.debian.org/debian/
- smb://foo/bar/baz
- irc://irc.freenode.net/
- http://localhost:3000
- https://www.google.com
- https://www.google.com
- ftp://ftp.us.debian.org/debian/
- smb://foo/bar/baz
- irc://irc.freenode.net
- http://localhost:3000
멀티미디어
이미지, 비디오, 오디오를 임베드합니다. 마크다운 구문을 사용하여 파일에 링크를 걸고 크기를 지정하고 인라인으로 표시할 수 있습니다. 서식 옵션을 사용하여 제목을 사용자 정의하고 너비와 높이를 지정하며 미디어가 렌더링된 출력에 어떻게 표시되는지 제어할 수 있습니다.
이미지
인라인 또는 참조 링크를 사용하여 이미지를 임베드합니다. 제목 텍스트를 보려면 이미지 위에 마우스를 올려두세요.
![대체 텍스트](img/markdown_logo.png "제목 텍스트")
참조 스타일:
![대체 텍스트1][로고]
[로고]: img/markdown_logo.png "제목 텍스트"
비디오
비디오 확장자가 있는 파일에 링크된 이미지 태그는 비디오 플레이어로 자동 변환됩니다. 유효한 비디오 확장자는 .mp4
, .m4v
, .mov
, .webm
, .ogv
입니다:
다음은 예시 비디오입니다:
![샘플 비디오](img/markdown_video.mp4)
이미지 또는 비디오 크기 변경
이미지 또는 비디오의 너비와 높이를 제어할 수 있습니다. 이미지 뒤에 속성 목록을 추가하여 너비와 높이를 지정할 수 있습니다.
값은 기본적으로 px
단위의 정수여야 합니다. 또는 %
단위일 수 있습니다.
예시:
![대체 텍스트](img/markdown_logo.png "제목 텍스트"){너비=100 높이=100px}
![대체 텍스트](img/markdown_logo.png "제목 텍스트"){너비=75%}
Markdown 대신 img
HTML 태그를 사용하여 height
및 width
매개변수를 설정할 수도 있습니다.
GitLab 17.1 이후에 Markdown 텍스트 상자에 더 높은 해상도 PNG 이미지를 붙여넣으면 차원이 항상 추가됩니다. 차원은 자동적으로 레티나 (및 기타 높은 해상도) 디스플레이를 고려하여 자동으로 조정됩니다. 예를 들어, 144ppi의 이미지는 차원의 50%로 크기가 조정되며, 96ppi의 이미지는 차원의 75%로 크기가 조정됩니다.
오디오
동영상과 유사하게 오디오 확장자를 가진 파일에 대한 링크 태그는 자동으로 오디오 플레이어로 변환됩니다. 유효한 오디오 확장자는 .mp3
, .oga
, .ogg
, .spx
, .wav
입니다.
다음은 예시 오디오 클립입니다:
![샘플 오디오](img/markdown_audio.mp3)
목록
순서가 있는 목록과 순서가 없는 목록을 생성할 수 있습니다.
순서가 있는 목록의 경우 각 줄의 시작에 1.
과 공백을 추가하여 목록을 시작할 번호를 지정합니다. 첫 번째 숫자 이후에 사용하는 숫자는 중요하지 않습니다. 순서가 있는 목록은 자동으로 수직 순서에 따라 번호가 매겨지므로 동일한 목록의 모든 항목에 대해 1.
을 반복하는 것이 일반적입니다. 숫자 1.
이 아닌 다른 숫자로 시작하는 경우 해당 숫자를 첫 번째 숫자로 사용하고 거기서부터 번호를 매깁니다.
예시:
1. 첫 번째 순서가 있는 목록 항목
2. 다른 항목
- 순서가 없는 하위 목록
3. 실제 숫자는 중요하지 않으며, 숫자이기만 하면 됩니다.
1. 순서가 있는 하위 목록
1. 다음 순서가 있는 하위 목록 항목
4. 또 다른 항목
- 첫 번째 순서가 있는 목록 항목
- 다른 항목
- 순서가 없는 하위 목록.
- 실제 숫자는 중요하지 않으며, 숫자이기만 하면 됩니다.
- 순서가 있는 하위 목록
- 다음 순서가 있는 하위 목록 항목
- 그리고 또 다른 항목.
순서가 없는 목록의 경우 각 줄의 시작에 -
, *
, 또는 +
와 공백을 추가합니다. 동일한 목록 내에서 문자를 혼용하지 않아야 합니다.
순서가 없는 목록은 다음을 수행할 수 있습니다:
- 사용
- 빼기
그들은 또한:
- 사용
- 별표
심지어:
- 사용
- 플러스
순서가 없는 목록은 다음을 수행할 수 있습니다:
- 사용
- 빼기
그들은 또한:
- 사용
- 별표
심지어:
- 사용
- 플러스
목록 항목에 여러 단락이 포함된 경우, 각 후속 단락은 목록 항목 텍스트의 시작과 동일한 수준으로 들여쓰기되어야 합니다.
예시:
1. 첫 번째 순서가 있는 목록 항목
첫 번째 항목의 두 번째 단락.
1. 다른 항목
-
첫 번째 순서가 있는 목록 항목
첫 번째 항목의 두 번째 단락.
-
다른 항목
첫 번째 항목의 단락이 올바른 수의 공백으로 들여쓰기되지 않은 경우 해당 단락은 목록 외부에 나타납니다. 목록 항목 아래에 올바른 수의 공백을 사용하여 올바르게 들여쓰기해야 합니다.
예를 들어:
1. 첫 번째 순서가 있는 목록 항목
(첫 번째 항목의 단락.)
1. 다른 항목
- 첫 번째 순서가 있는 목록 항목
(첫 번째 항목의 단락.)
- 다른 항목
순서가 없는 목록 항목의 첫 번째 하위 항목이 1.
로 시작하지 않는 경우, 선행하는 공백 행이 있어야 합니다.
좋은 예시
- 순서가 없는 목록 항목
5. 첫 번째 순서가 있는 목록 항목
나쁜 예시
- 순서가 없는 목록 항목 5. 첫 번째 순서가 있는 목록 항목
CommonMark는 순서가 있는 목록 항목과 순서가 없는 목록 항목 사이의 공백 라인을 무시하고 하나의 목록으로 간주합니다. 항목들은 하나의loose 목록의 일부로 간주됩니다. 각 목록 항목은 단락 태그로 둘러싸이므로 단락 간 간격과 여백이 있습니다. 이로써 각 항목 간에 추가 공간이 있는 것처럼 보입니다.
예를 들어:
- 첫 번째 목록 항목
- 두 번째 목록 항목
- 다른 목록
CommonMark는 빈 줄을 무시하고 이를 단락 간 간격이 있는 한 목록으로 렌더링합니다.
작업 목록
- GitLab 15.3에서 도입된 적용되지 않는 확인란
GitLab에서 이 주제를 렌더링된 이 주제를 확인하세요.
Markdown이 지원되는 곳이라면 작업 목록을 추가할 수 있습니다.
- 이슈, 병합 요청, 에픽, 및 코멘트에서는 상자를 선택할 수 있습니다.
- 다른 모든 장소에서는 상자를 선택할 수 없습니다. 수동으로 Markdown을 편집하여 대괄호에
x
를 추가하거나 제거해야 합니다.
완료 및 미완료 외에도 작업은 적용되지 않음 상태일 수도 있습니다. 이슈, 병합 요청, 에픽, 또는 코멘트에서 적용되지 않는 확인란을 선택해도 효과가 없습니다.
작업 목록을 만들려면 순서가 있는 목록 또는 순서가 없는 목록의 형식을 따라야 합니다:
- [x] 완료된 작업
- [~] 적용되지 않는 작업
- [ ] 미완료된 작업
- [x] 하위 작업 1
- [~] 하위 작업 2
- [ ] 하위 작업 3
1. [x] 완료된 작업
1. [~] 적용되지 않는 작업
1. [ ] 미완료된 작업
1. [x] 하위 작업 1
1. [~] 하위 작업 2
1. [ ] 하위 작업 3
테이블에 작업 목록을 포함하려면, HTML 목록 태그 또는 HTML 테이블을 사용하세요.
인용구
GitLab에서 이 주제를 렌더링된 이 주제를 확인하세요.
인용구를 사용하여 사이드 노트와 같은 정보를 강조할 수 있습니다. 이를 생성하려면 인용구의 줄을 >
로 시작합니다:
> 인용구를 사용하여 회신 텍스트와 유사하게 만들 수 있습니다.
> 이 줄은 동일한 인용문의 일부입니다.
인용문 분리.
> 이 매우 긴 줄은 여전히 올바르게 인용되며 줄 바꿈될 때 유지됩니다. 모두에게 실제로 줄 바꿈이 되도록이 줄이 충분히 길어지도록 계속 작성하세요. 또한 인용구에서 *Markdown*을 **사용**할 수 있습니다.
인용구를 사용하여 회신 텍스트와 유사하게 만들 수 있습니다. 이 줄은 동일한 인용문의 일부입니다.
인용문 분리.
이 매우 긴 줄은 여전히 올바르게 인용되며 줄 바꿈될 때 유지됩니다. 모두에게 실제로 줄 바꿈이 되도록이 줄이 충분히 길어지도록 계속 작성하세요. 또한 인용구에서 Markdown을 사용할 수 있습니다.
다중 행 인용구
>>>
로 감싼 다중 행 블록 인용구를 생성하세요:
> > > 다른 곳에서 메시지를 붙여넣는 경우
여러 줄에 걸친 경우,
모든 줄에 수동으로 `>`를 추가하지 않고도 인용할 수 있습니다!
> > >
코드 스팬 및 블록
코드로 처리되어야 하는 내용을 강조하세요.
인라인 코드는 단일 역따옴표 `
로 서식이 지정됩니다:
인라인 `코드`는 `역따옴표를 사용`해서 처리됩니다.
인라인 코드
는 역따옴표를 사용
해서 처리됩니다.
더 큰 코드 예제에 유사한 효과를 얻으려면 다음을 수행할 수 있습니다:
- 세 개의 역따옴표 (
- 여는 집합과 닫는 집합이 동일하면 세 개 이상의 역따옴표를 사용할 수 있습니다. 예를 들어 코드 블록에서 제안을 포함하거나 그 반대 경우에는 여러 개의 역따옴표를 사용할 수 있습니다.
- 세 개의 물결 표시로 전체 코드 블록을 감싸세요.
- 네 개 이상의 공백으로 들여쓰기합니다.
```python
def function():
# 들여쓰기가 코드 블록에서 정상적으로 작동함
s = "파이썬 코드"
print s
```
4개의 공백을 사용하면
3개의 역따옴표를 사용한 것과 같습니다.
~~~
물결 표시도 괜찮습니다.
~~~
위의 세 가지 예제는 다음과 같이 렌더링됩니다:
def function():
# 들여쓰기가 코드 블록에서 정상적으로 작동함
s = "파이썬 코드"
print s
4개의 공백을 사용하면
3개의 역따옴표를 사용한 것과 같습니다.
물결 표시도 괜찮습니다.
구문 강조
GitLab은 더 다채로운 구문 강조를 위해 루비 루주(Rouge) 라이브러리를 사용합니다. 지원되는 언어 목록은 Rouge 프로젝트 위키를 참조하세요. 구문 강조는 코드 블록에서만 지원되므로 인라인 코드는 강조할 수 없습니다.
코드 블록을 감싸고 구문 강조를 적용하려면 코드 시작 부분에 코드 언어를 추가하세요.
세 개의 역따옴표 (
`` ) 또는 세 개의 물결 표시 (
~~~`) 뒤에 코드 언어를 추가하세요:
```javascript
var s = "JavaScript 구문 강조";
alert(s);
```
```python
def function():
# 들여쓰기가 코드 블록에서 정상적으로 작동함
s = "Python 구문 강조"
print s
```
```ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
```
```
언어가 지정되지 않았으므로 구문 강조가 없습니다.
s = "이 줄에는 구문 강조가 표시되지 않습니다."
하지만 <b>tag</b>을 넣어 봅시다.
```
위의 네 가지 예제는 다음과 같이 렌더링됩니다:
var s = "JavaScript 구문 강조";
alert(s);
def function():
# 들여쓰기가 코드 블록에서 정상적으로 작동함
s = "Python 구문 강조"
print s
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
언어가 지정되지 않았으므로 구문 강조가 없습니다.
s = "이 줄에는 구문 강조가 표시되지 않습니다."
하지만 <b>tag</b>을 넣어 봅시다.
다이어그램 및 플로차트
텍스트로부터 다이어그램을 생성하는 것이 가능합니다:
위키에서는 다이어그램.net 편집기로 생성된 다이어그램을 추가하고 수정할 수 있습니다.
Mermaid
- GitLab 16.0에서 Entity Relationship 다이어그램 및 마인드 맵의 지원이 추가되었습니다.
더 많은 세부 정보를 위해 공식 페이지를 방문하세요. Mermaid 라이브 편집기를 사용하여 Mermaid 코드의 문제를 식별하고 해결하세요. 그것을 사용하여 다이어그램의 문제를 식별하고 해결하세요.
다이어그램이나 플로차트를 생성하려면 mermaid
블록 내에 텍스트를 작성하세요:
```mermaid
graph TD;
A-->B;
A-->C;
B-->D;
C-->D;
```
하위 그래프를 포함할 수도 있습니다:
```mermaid
graph TB
SubGraph1 --> SubGraph1Flow
subgraph "SubGraph 1 Flow"
SubGraph1Flow(SubNode 1)
SubGraph1Flow -- Choice1 --> DoChoice1
SubGraph1Flow -- Choice2 --> DoChoice2
end
subgraph "Main Graph"
Node1[Node 1] --> Node2[Node 2]
Node2 --> SubGraph1[Jump to SubGraph1]
SubGraph1 --> FinalThing[Final Thing]
end
```
PlantUML
GitLab.com에서는 PlantUML 통합이 활성화되어 있습니다. GitLab의 셀프매너지 설치에서 PlantUML을 사용할 수 있도록 하려면 GitLab 관리자는 이를 활성화해야 합니다.
Kroki
GitLab에서 Kroki를 사용하려면 GitLab 관리자가 이를 활성화해야 합니다. 자세한 내용은 Kroki 통합 페이지를 참조하세요.
수학
- LaTeX 호환 펜싱은 GitLab 15.4에서 markdown_dollar_math이라는 플래그로 도입되었으며, 기본적으로 비활성화되어 있습니다. GitLab.com에서 활성화되어 있습니다.
- LaTeX 호환 펜싱은 GitLab 15.8에서 일반적으로 사용 가능해졌습니다. 기능 플래그
markdown_dollar_math
가 제거되었습니다.
LaTeX 구문으로 작성된 수식은 KaTeX으로 렌더링됩니다.
KaTeX는 LaTeX의 일부만 지원합니다.
이 구문은 AsciiDoc 위키와 :stem: latexmath
를 사용하는 파일에서도 작동합니다. 자세한 내용은
AsciiDoctor 사용자 매뉴얼을 참조하세요.
악의적인 활동을 방지하기 위해 GitLab은 인라인 수학 인스턴스를 최대 50개까지만 렌더링합니다. 렌더링 시간을 기준으로 수학 블록의 수도 제한됩니다. 제한을 초과하면 GitLab이 나머지 수학 인스턴스를 텍스트로 렌더링합니다. 위키와 저장소 파일에는 이러한 제한이 없습니다.
딸기 사이에 있는 더블 더블 더블 더블 더블 더블 더블 더블
테이블
테이블을 생성할 때:
- 첫 번째 줄에는 헤더가 있으며, 이는 파이프 문자(
|
)로 구분됩니다. - 두 번째 줄은 헤더와 셀을 구분합니다.
- 셀은 비어 있는 공백, 하이픈 및 가로 정렬에만 콜론을 추가할 수 있습니다(선택 사항).
- 각 셀에는 하이픈이 하나 이상 있어야 하지만, 셀에 더 많은 하이픈을 추가해도 셀의 렌더링이 변경되지 않습니다.
- 하이픈, 공백 또는 콜론 이외의 콘텐츠는 허용되지 않습니다.
- 세 번째 및 이후의 줄에는 셀 값이 포함됩니다.
- Markdown에서 여러 줄에 걸쳐있는 셀을 가질수는 없습니다. 한 줄만 유지해야 하지만 매우 길 수 있습니다. 필요한 경우 HTML
<br>
태그를 사용하여 강제로 새 줄을 만들 수 있습니다. - 셀 크기는 서로 일치할 필요는 없습니다. 유연하게 사용할 수 있지만 파이프(
|
)로 구분해야 합니다. - 빈 셀이 있을 수 있습니다.
- Markdown에서 여러 줄에 걸쳐있는 셀을 가질수는 없습니다. 한 줄만 유지해야 하지만 매우 길 수 있습니다. 필요한 경우 HTML
- 열 너비는 셀의 내용을 기반으로 동적으로 계산됩니다.
- 텍스트 내에 파이프 문자(
|
)를 사용하려면 이스케이프 처리해야 합니다.
예시:
| header 1 | header 2 | header 3 |
| -------- | -------- | -------- |
| cell 1 | cell 2 | cell 3 |
| cell 4 | cell 5 | cell 6 |
| cell 7 | cell 8 | cell 9 |
header 1 | header 2 | header 3 |
---|---|---|
cell 1 | cell 2 | cell 3 |
cell 4 | cell 5 | cell 6 |
cell 7 | cell 8 | cell 9 |
정렬
또한 두 번째 행에 있는 “대시” 라인의 양쪽에 콜론(:
)을 추가하여 텍스트의 정렬을 선택할 수 있습니다. 이는 각 열의 모든 셀에 영향을 미칩니다:
| Left Aligned | Centered | Right Aligned |
| :----------- | :------: | ------------: |
| Cell 1 | Cell 2 | Cell 3 |
| Cell 4 | Cell 5 | Cell 6 |
Left Aligned | Centered | Right Aligned |
---|---|---|
Cell 1 | Cell 2 | Cell 3 |
Cell 4 | Cell 5 | Cell 6 |
실제 GitLab에서는 Chrome과 Firefox에서 헤더는 항상 왼쪽 정렬이며 Safari에서는 중앙 정렬됩니다.
여러 줄을 갖는 셀
테이블의 렌더링을 조정하기 위해 HTML 형식을 사용할 수 있습니다. 예를 들어 <br>
태그를 사용하여 셀이 여러 줄을 가지게 할 수 있습니다:
| Name | Details |
| ----- | ---------------------------------------------------------------------- |
| Item1 | This text is on one line |
| Item2 | This item has:<br>- Multiple items<br>- That we want listed separately |
Name | Details |
---|---|
Item1 | This text is on one line |
Item2 | This item has: - Multiple items - That we want listed separately |
테이블 내 작업 목록
체크박스가 있는 작업 목록을 추가하려면 HTML 형식을 사용하십시오. 두 가지 방법을 사용할 수 있습니다.
-
셀 안에 Markdown을 사용한 HTML 테이블. 이 형식의 표는 완벽하게 작동하는 작업 목록을 만듭니다.
<table> <thead> <tr> <th>헤더 1</th> <th>헤더 2</th> </tr> </thead> <tbody> <tr> <td>셀 1</td> <td>셀 2</td> </tr> <tr> <td>셀 3</td> <td>- [ ] 작업 1 - [ ] 작업 2</td> </tr> </tbody> </table>
-
HTML 목록 태그를 사용한 Markdown 테이블. 이 형식의 표는 선택한 작업의 상태를 저장하지 않습니다. 이 형식으로 작성된 표는
docs.gitlab.com
에서 올바르게 렌더링되지 않습니다.| 헤더 1 | 헤더 2 | | ------ | ------------------------------------------------------- | | 셀 1 | 셀 2 | | 셀 3 | <ul><li> - [ ] 작업 1 </li><li> - [ ] 작업 2 </li></ul> |
또한 리치 텍스트 에디터에서 표를 만들고 작업 목록을 삽입할 수 있습니다.
스프레드시트에서 복사하여 붙여넣기
스프레드시트 소프트웨어(예: Microsoft Excel, Google Sheets, 또는 Apple Numbers)에서 작업 중이라면, GitLab은 스프레드시트를 복사하여 붙여넣으면 Markdown 테이블을 생성합니다. 예를 들어, 다음과 같은 스프레드시트가 있다고 가정해 보겠습니다.
셀을 선택하고 클립보드에 복사합니다. GitLab Markdown 입력란을 열고 스프레드시트를 붙여넣습니다.
JSON
JSON 코드 블록으로 표를 렌더링하려면 다음 구문을 사용하십시오.
```json:table
{}
```
이 기능에 대한 비디오 안내를 시청하십시오.
items
속성은 데이터 포인트를 나타내는 객체 목록입니다.
```json:table
{
"items" : [
{"a": "11", "b": "22", "c": "33"}
]
}
```
표 레이블을 지정하려면 fields
속성을 사용하십시오.
```json:table
{
"fields" : ["a", "b", "c"],
"items" : [
{"a": "11", "b": "22", "c": "33"}
]
}
```
모든 items
요소가 fields
에 대응될 필요는 없습니다.
```json:table
{
"fields" : ["a", "b", "c"],
"items" : [
{"a": "11", "b": "22", "c": "33"},
{"a": "211", "c": "233"}
]
}
```
fields
가 명시적으로 지정되지 않으면 레이블은 items
의 첫 번째 요소에서 가져옵니다.
```json:table
{
"items" : [
{"a": "11", "b": "22", "c": "33"},
{"a": "211", "c": "233"}
]
}
```
fields
에 사용자 정의 레이블을 지정할 수 있습니다.
```json:table
{
"fields" : [
{"key": "a", "label": "AA"},
{"key": "b", "label": "BB"},
{"key": "c", "label": "CC"}
],
"items" : [
{"a": "11", "b": "22", "c": "33"},
{"a": "211", "b": "222", "c": "233"}
]
}
```
개별 요소에 대한 정렬을 활성화할 수 있습니다 fields
.
```json:table
{
"fields" : [
{"key": "a", "label": "AA", "sortable": true},
{"key": "b", "label": "BB"},
{"key": "c", "label": "CC"}
],
"items" : [
{"a": "11", "b": "22", "c": "33"},
{"a": "211", "b": "222", "c": "233"}
]
}
```
사용자 입력에 의해 동적으로 내용이 필터링된 표를 렌더링하려면 filter
속성을 사용하십시오.
```json:table
{
"fields" : [
{"key": "a", "label": "AA"},
{"key": "b", "label": "BB"},
{"key": "c", "label": "CC"}
],
"items" : [
{"a": "11", "b": "22", "c": "33"},
{"a": "211", "b": "222", "c": "233"}
],
"filter" : true
}
```
기본적으로 각 JSON 표에는 Generated with JSON data
라는 제목이 있습니다.
이 설명을 재정의하려면 caption
속성을 지정하십시오.
```json:table
{
"items" : [
{"a": "11", "b": "22", "c": "33"}
],
"caption" : "사용자 정의 캡션"
}
```
JSON이 잘못되면 오류가 발생합니다.
```json:table
{
"items" : [
{"a": "11", "b": "22", "c": "33"}
],
}
```
목차
목차는 문서의 하위 제목에 연결되는 순서 없는 목록입니다. 문제, 병합 요청, 에픽에 목차를 추가할 수 있지만 노트나 댓글에는 추가할 수 없습니다.
지원되는 콘텐츠 유형의 description 필드에 다음 태그 중 하나를 사용해야 합니다.
[[_TOC_]]
또는
[TOC]
- Markdown 파일.
- 위키 페이지.
- 이슈.
- 병합 요청.
- 에픽.
참고:
_TOC_
코드를 대괄호 안에 넣은 경우에도 목차가 표시됩니다. 이 동작은 의도된 것이 아닙니다.
자세한 정보는 issue 359077을 참조하십시오.
이 문장은 내 위키 페이지를 소개합니다.
[[_TOC_]]
## 내 첫 번째 헤딩
첫 번째 섹션 내용.
## 내 두 번째 헤딩
두 번째 섹션 내용.
색상
Markdown은 텍스트 색상을 변경하는 것을 지원하지 않습니다.
HEX
, RGB
, 또는 HSL
형식의 색상 코드를 작성할 수 있습니다.
-
HEX
:`#RGB[A]`
또는`#RRGGBB[AA]
-
RGB
:`RGB[A](R, G, B[, A])`
-
HSL
:`HSL[A](H, S, L[, A])`
이름으로 된 색상은 지원되지 않습니다.
GitLab 애플리케이션(하지만 GitLab 문서에는 해당되지 않음)에서는 역따옴표 안의 색상 코드 옆에 색상 칩이 표시됩니다. 예를 들면:
- `#F00`
- `#F00A`
- `#FF0000`
- `#FF0000AA`
- `RGB(0,255,0)`
- `RGB(0%,100%,0%)`
- `RGBA(0,255,0,0.3)`
- `HSL(540,70%,50%)`
- `HSLA(540,70%,50%,0.3)`
#F00
#F00A
#FF0000
#FF0000AA
RGB(0,255,0)
RGB(0%,100%,0%)
RGBA(0,255,0,0.3)
HSL(540,70%,50%)
HSLA(540,70%,50%,0.3)
이모지
가끔은 :monkey: 좀 심심할 때 있습니다. 그래서 :star2: 일부를 추가하고 :speech_balloon:에 일부를 넣고 싶을 때가 있습니다. 우리는 여러분에게 선물을 드립니다:
:zap: 지원되는 곳이면 GitLab Flavored Markdown을 사용하여 이모지를 사용할 수 있습니다. :v:
이모지를 사용하여 :bug:를 가리킬 수 있거나 :speak_no_evil: 패치에 대해 경고할 수 있습니다. 또한 누군가가 여러분의 아주 :snail: 코드를 개선한다면 :birthday:를 보내보세요. 그렇게 하면 사람들이 여러분을 :heart:합니다.
이것이 처음이라면, 용감해하지 마십시오 :fearful:. 이모지 :family:에 가입할 수 있습니다. 지원되는 코드 중 하나를 찾아보기만 하면 됩니다.
이모지 치트 시트를 참조하여 지원되는 이모지 코드 목록을 확인하십시오. :thumbsup:
위의 문단들은 다음과 같은 Markdown으로 작성됩니다.
가끔은 :monkey: 좀 심심할 때 있습니다. 그래서 :star2: 일부를 추가하고 :speech_balloon:에
일부를 넣고 싶을 때가 있습니다. 우리는 여러분에게 선물을 드립니다:
:zap: 지원되는 곳이면 GitLab Flavored Markdown을 사용하여 이모지를 사용할 수 있습니다. :v:
이모지를 사용하여 :bug:를 가리킬 수 있거나 :speak_no_evil: 패치에 대해 경고할 수 있습니다.
또한 누군가가 여러분의 아주 :snail: 코드를 개선한다면 :birthday:를 보내보세요.
그렇게 하면 사람들이 여러분을 :heart:합니다.
이것이 처음이라면, 용감해하지 마십시오 :fearful:. 이모지 :family:에 가입할 수 있습니다.
지원되는 코드 중 하나를 찾아보기만 하면 됩니다.
[이모지 치트 시트](https://www.webfx.com/tools/emoji-cheat-sheet/)를 참조하여 지원되는 이모지 코드 목록을 확인하십시오. :thumbsup:
이모지와 귀하의 운영 체제
이전의 이모지 예제는 하드코딩된 이미지를 사용합니다. GitLab에서 렌더링된 이모지는 운영 체제와 사용하는 브라우저에 따라 다를 수 있습니다.
대부분의 이모지는 macOS, Windows, iOS, Android에서 네이티브로 지원되며, 지원되지 않는 경우 이미지 기반의 이모지로 대체됩니다.
Linux에서는 Noto Color Emoji를 다운로드하여 완전한 네이티브 이모지 지원을 받을 수 있습니다. Ubuntu 22.04 (많은 현대적인 Linux 배포판과 마찬가지로)에는 이 폰트가 기본으로 설치되어 있습니다.
사용자 지정 이모지 추가에 대해 자세히 알아보려면 사용자 정의 이모지를 참조하세요.
Front matter
Front matter는 Markdown 문서의 시작 부분에 포함된 메타데이터로, 해당 데이터는 Jekyll, Hugo 등의 정적 사이트 생성기에서 사용될 수 있습니다.
GitLab에서 렌더링된 Markdown 파일을 보면 front matter가 내용 그대로 상자 모양으로 표시되며, HTML 콘텐츠는 front matter 이후에 표시됩니다. 예제를 보려면 GitLab 설명 파일의 소스와 렌더링 버전을 전환할 수 있습니다.
GitLab에서는 front matter가 Markdown 파일 및 위키 페이지에서만 사용되며, 다른 Markdown 형식이 지원되는 곳에서는 사용되지 않습니다. 이것은 문서의 맨 위에 있어야 하며, 구분 기호 사이에 있어야 합니다.
다음과 같은 구분 기호가 지원됩니다:
-
YAML (
---
):--- title: Front Matter에 대한 정보 예시: 언어: yaml ---
-
TOML (
+++
):+++ title = "Front Matter에 대한 정보" [example] language = "toml" +++
-
JSON (
;;;
):;;; { "title": "Front Matter에 대한 정보", "example": { "language": "json" } } ;;;
기존의 구분 기호 중 하나에 명시자를 추가하여 다른 언어를 지원할 수도 있습니다. 예를 들어:
---php
$title = "Front Matter에 대한 정보";
$example = array(
'language' => "php",
);
---
이스케이프 문자
GitLab에서 렌더링한 이 주제를 여기에서 확인하세요.
Markdown은 페이지 서식을 지정하기 위해 다음 ASCII 문자를 예약합니다.
! " # $ % & ' ( ) * + , - . / : ; < = > ? @ [ \ ] ^ _ ` { | } ~
위의 예약된 문자 중 하나를 사용하려면 예약된 문자 바로 앞에 백슬래시 문자 (\
)를 추가하면 됩니다. 백슬래시를 예약된 문자 앞에 놓으면 Markdown 파서가 백슬래시를 무시하고 예약된 문자를 일반 텍스트로 취급합니다.
예시:
\# 제목이 아닙니다
| 음식 | 이 음식을 좋아하나요? (원으로 둘러싼 상태) |
|---------------|-----------------------------------------|
| 피자 | 예 \| 아니요 |
\**굵은체가 아니라 별표 사이에 끼워진 기울임꼴 텍스트*\*
렌더링될 때 이스케이프된 문자는 다음과 같습니다:
# 제목이 아닙니다
음식 | 이 음식을 좋아하나요? (원으로 둘러싼 상태) |
---|---|
피자 | 예 | 아니요 |
*굵은체가 아니라 별표 사이에 끼워진 기울임꼴 텍스트*
예외:
백슬래시는 항상 뒤에 나오는 문자를 이스케이프 하는 것은 아닙니다. 다음 경우에는 백슬래시가 일반 텍스트로 표시됩니다.
- 백슬래시가
A
,3
, 공백 등과 같은 예약되지 않은 문자 앞에 나타날 때 - 백슬래시가 다음 Markdown 요소 내에 있을 때:
- 코드 블록
- 코드 스팬
- 자동 링크
-
<kbd>
와 같은 인라인 HTML
이 경우 해당 Markdown 요소에 의해 백슬래시가 일반 텍스트로 표시되므로 ]
에 대한 ]
와 같은 HTML 엔티티를 사용해야 할 수도 있습니다.
각주
이 주제를 GitLab에서 렌더링한 예시는 여기에서 확인하세요.
각주는 Markdown 파일의 맨 뒤에 표시되는 주석으로 이뤄진 링크를 추가합니다.
각주를 만들려면 참조 태그와 별도의 라인(파일 어디든 상관없음)에 노트 콘텐츠가 필요합니다.
태그의 이름과 관계없이 참조 태그의 상대적인 순서가 렌더링된 번호를 결정합니다.
노트를 어디에 놓든 파일 아래에서 항상 표시됩니다.
A footnote reference tag looks like this: [^1] This reference tag is a mix of
letters and numbers. [^footnote-42] [^1]: This text is inside a footnote.
[^footnote-42]: This text is another footnote.
각주 참조 태그는 다음과 같습니다:1
이 참조 태그는 문자와 숫자의 혼합으로 구성됩니다.2
수평선
수평선은 세 개 이상의 하이픈, 별표 또는 밑줄을 사용하여 만들 수 있습니다:
---
---
---
인라인 HTML
Markdown에 원시 HTML을 사용할 수 있으며, 일반적으로 잘 작동합니다.
HTML::Pipeline
의 SanitizationFilter 클래스의 문서에서 허용되는 HTML 태그 및 속성 목록을 확인할 수 있습니다. 기본 SanitizationFilter
허용 목록에 추가로 GitLab은 span
, abbr
, details
, summary
요소를 허용합니다. rel="license"
는 Rel-License microformat 및 라이선스 어트리뷕션을 지원하기 위해 링크에 허용됩니다.
<dl>
<dt>정의 목록</dt>
<dd>사람들이 가끔 사용하는 것입니다.</dd>
<dt>HTML에서의 Markdown</dt>
<dd>
<em>정말</em> 잘 작동하지 않습니다. HTML <em>태그</em>는 대부분의 경우에는
<b>작동합니다.</b>
</dd>
</dl>
- 정의 목록
- 사람들이 가끔 사용하는 것입니다.
- HTML에서의 Markdown
- 정말 잘 작동하지 않습니다. HTML 태그는 대부분의 경우에는 작동합니다.
Markdown을 여전히 HTML 태그 안에 사용하는 것은 가능하지만 Markdown을 담고 있는 줄은 별도로 처리해야 합니다.
<dl>
<dt>HTML에서의 Markdown</dt>
<dd>
<em>정말</em> 잘 작동하지 않습니다. HTML 태그는 대부분의 경우에는
작동합니다.
</dd>
<dt>올바른 간격으로 사용한 Markdown이 들어 있는 HTML에서의 Markdown</dt>
<dd>
<em>정말</em> 잘 작동하지 않습니다. HTML 태그는 대부분의 경우에는
작동합니다.
</dd>
</dl>
- HTML에서의 Markdown
- 정말 잘 작동하지 않습니다. HTML 태그는 대부분의 경우에는 작동합니다.
- 올바른 간격으로 사용한 Markdown이 들어 있는 HTML에서의 Markdown
- 정말 잘 작동하지 않습니다. HTML 태그는 대부분의 경우에는 작동합니다.
접을 수 있는 섹션
콘텐츠는 HTML의 <details>
와 <summary>
태그를 사용하여 접을 수 있습니다. 예를 들어, 긴 로그 파일을 접어서 화면 공간을 덜 차지하도록 할 수 있습니다.
<details>
<summary>확장하려면 클릭하세요</summary>
이러한 세부사항은 확장할 때까지 <em>숨겨진</em> 상태를 유지합니다.
<pre><code>여기에 로그 붙여넣기</code></pre>
</details>
확장하려면 클릭하세요
이러한 세부사항은 확장할 때까지 숨겨진 상태를 유지합니다.여기에 로그 붙여넣기
이러한 태그 내부의 Markdown도 지원됩니다.
예시에서 보여진 대로, Markdown 섹션 앞뒤에 빈 줄을 남겨야 함을 기억하세요:
<details>
<summary>펼치려면 _클릭_하세요.</summary>
이러한 세부사항은 펼쳐질 때까지 _숨겨진_ 상태를 유지합니다.
</details>
로그 붙여넣기
</details>
펼치려면 클릭하세요.
이러한 세부사항은 펼쳐질 때까지 숨겨진 상태를 유지합니다.로그 붙여넣기
키보드 HTML 태그
<kbd>
요소는 사용자 키보드 입력을 나타내는 텍스트를 식별하는 데 사용됩니다. <kbd>
태그로 둘러싸인 텍스트는 일반적으로 브라우저의 기본 모노스페이스 글꼴로 표시됩니다.
<kbd>Enter</kbd>를 눌러 다음 페이지로 이동하세요.
Enter를 눌러 다음 페이지로 이동하세요.
위첨자 / 아래첨자
위첨자와 아래첨자에 대해서는 표준 HTML 구문을 사용하세요:
물의 화학식은 H<sub>2</sub>O이고, 상대이론의 방정식은 E = mc<sup>2</sup>입니다.
물의 화학식은 H2O이고, 상대이론의 방정식은 E = mc2입니다.
GitLab Flavored Markdown은 Redcarpet 위첨자 구문( x^2
)을 지원하지 않습니다.
위키별 Markdown
다음 주제는 위키 내부 링크의 동작을 보여줍니다.
위키 페이지에 링크할 때, 페이지 이름 대신 페이지 슬러그를 사용해야 합니다.
위키 - 직접 페이지 링크
직접 페이지 링크에는 위키의 기본 수준에서 그 페이지를 가리키는 페이지 슬러그가 포함됩니다.
이 예시는 위키의 루트에있는 documentation
페이지로 링크합니다:
[문서로 이동](documentation)
위키 - 직접 파일 링크
직접 파일 링크는 현재 페이지를 기준으로 파일 확장자에 링크합니다.
다음 예시가 <your_wiki>/documentation/related
페이지에 있다면, <your_wiki>/documentation/file.md
에 연결됩니다:
[파일로 이동](file.md)
위키 - 계층적 링크
계층적 링크는 ./<페이지>
또는
../<페이지>
와 같은 상대 경로를 사용하여 현재 위키 페이지를 기준으로 만들 수 있습니다.
이 예시가 <your_wiki>/documentation/main
페이지에서, <your_wiki>/documentation/related
에 링크합니다:
[관련 페이지로 이동](related)
이 예시가 <your_wiki>/documentation/related/content
페이지에서 <your_wiki>/documentation/main
에 링크합니다:
[관련 페이지로 이동](../main)
이 예시가 <your_wiki>/documentation/main
페이지에서 <your_wiki>/documentation/related.md
에 링크합니다:
[관련 페이지로 이동](related.md)
이 예시가 <your_wiki>/documentation/related/content
페이지에서 <your_wiki>/documentation/main.md
에 링크합니다:
[관련 페이지로 이동](../main.md)
위키 - 루트 링크
루트 링크는 /
로 시작하여 위키 루트를 기준으로 상대적입니다.
이 예시는 <wiki_root>/documentation
에 링크합니다:
[관련 페이지로 이동](/documentation)
이 예시는 <wiki_root>/documentation.md
에 링크합니다:
[관련 페이지로 이동](/documentation.md)
diagrams.net 에디터
위키에서 diagrams.net 에디터를 사용하여 다이어그램을 생성할 수 있습니다. 이 에디터로 생성된 다이어그램을 편집할 수도 있습니다. 이 다이어그램 에디터는 일반 텍스트 편집기와 리치 텍스트 편집기에서 모두 사용할 수 있습니다.
더 많은 정보는 Diagrams.net를 참조하세요.
일반 텍스트 편집기
일반 텍스트 편집기에서 다이어그램을 만들려면:
- 편집하려는 위키 페이지에서 편집을 선택하세요.
- 텍스트 상자에서 일반 텍스트 편집기를 사용 중인지 확인하세요 (왼쪽 하단에 있는 버튼이 리치 텍스트 편집으로 전환이라고 표시되어 있는지 확인하세요).
- 편집기의 툴바에서 다이어그램 삽입 또는 편집 ()을 선택하세요.
- app.diagrams.net 에디터에서 다이어그램을 생성하세요.
- 저장 및 나가기를 선택하세요.
위키 콘텐츠에는 Markdown 이미지 참조가 삽입됩니다.
일반 텍스트 편집기에서 다이어그램을 편집하려면:
- 편집하려는 위키 페이지에서 편집을 선택하세요.
- 텍스트 상자에서 일반 텍스트 편집기를 사용 중인지 확인하세요 (왼쪽 하단에 있는 버튼이 리치 텍스트 편집으로 전환이라고 표시되어 있는지 확인하세요).
- 이전 다이어그램을 포함하는 Markdown 이미지 참조 내에서 커서를 위치하세요.
- 다이어그램 삽입 또는 편집 ()을 선택하세요.
- app.diagrams.net 에디터에서 다이어그램을 편집하세요.
- 저장 및 나가기를 선택하세요.
Markdown 이미지 참조에는 새 다이어그램을 삽입하여 바로 이전의 다이어그램을 대체합니다.
리치 텍스트 편집기
리치 텍스트 편집기에서 다이어그램을 만들려면:
- 편집하려는 위키 페이지에서 편집을 선택합니다.
- 텍스트 상자에서 리치 텍스트 편집기를 사용하고 있는지 확인합니다 (왼쪽 하단에 있는 버튼이 평문 편집으로 전환이라고 표시됨).
- 편집기의 툴바에서 더 많은 옵션 ()을 선택합니다.
- 드롭다운 목록에서 다이어그램 만들기 또는 편집을 선택합니다.
- app.diagrams.net 편집기에서 다이어그램을 만듭니다.
- 저장 및 종료를 선택합니다.
다이어그램은 diagrams.net 편집기에서 시각화된 후 위키 콘텐츠에 삽입됩니다.
리치 텍스트 편집기에서 다이어그램을 편집하려면:
- 편집하려는 위키 페이지에서 편집을 선택합니다.
- 텍스트 상자에서 리치 텍스트 편집기를 사용하고 있는지 확인합니다 (왼쪽 하단에 있는 버튼이 평문 편집으로 전환이라고 표시됨).
- 편집하려는 다이어그램을 선택합니다.
- 떠다니는 툴바에서 다이어그램 편집 ()을 선택합니다.
- app.diagrams.net 편집기에서 다이어그램을 편집합니다.
- 저장 및 종료를 선택합니다.
선택한 다이어그램이 업데이트된 버전으로 교체됩니다.
GitLab 특정 참조
GitLab Flavored Markdown은 GitLab 특정 참조를 렌더링합니다. 예를 들어 이슈, 커밋, 팀 구성원 또는 프로젝트 팀 전체를 참조할 수 있습니다. GitLab Flavored Markdown은 해당 참조를 링크로 변환하여 해당 간 이동할 수 있도록 합니다. 프로젝트에 대한 모든 참조는 프로젝트 이름 대신 프로젝트 슬러그를 사용해야 합니다.
또한, GitLab Flavored Markdown은 특정 교차 프로젝트 참조를 인식하고 동일한 네임스페이스 내의 다른 프로젝트를 참조하기 위한 간단한 버전도 인식합니다.
GitLab Flavored Markdown은 다음을 인식합니다:
참조 | 입력 | 교차 프로젝트 참조 | 동일 네임스페이스 내의 축약 버전 |
---|---|---|---|
특정 사용자 | @user_name
| ||
특정 그룹 | @group_name
| ||
전체 팀 | @all
| ||
프로젝트 | namespace/project>
| ||
이슈 | #123
| namespace/project#123
| project#123
|
머지 리퀘스트 | !123
| namespace/project!123
| project!123
|
스니펫 | $123
| namespace/project$123
| project$123
|
Epic | &123
| group1/subgroup&123
| |
이터레이션 | *iteration:"iteration title"
| ||
이터레이션 주기 (ID 기반)1 | [cadence:123]
| ||
이터레이션 주기 (단어로 기반)1 | [cadence:plan]
| ||
이터레이션 주기 (다중 단어로 기반)1 | [cadence:"plan a"]
| ||
취약점 | [vulnerability:123]
| [vulnerability:namespace/project/123]
| [vulnerability:project/123]
|
피처 플래그 | [feature_flag:123]
| [feature_flag:namespace/project/123]
| [feature_flag:project/123]
|
ID로 라벨2 | ~123
| namespace/project~123
| project~123
|
라벨 (한 단어) 2 | ~bug
| namespace/project~bug
| project~bug
|
라벨 (여러 단어) 2 | ~"feature request"
| namespace/project~"feature request"
| project~"feature request"
|
라벨 (스코프 지정) 2 | ~"priority::high"
| namespace/project~"priority::high"
| project~"priority::high"
|
ID로 프로젝트 마일스톤2 | %123
| namespace/project%123
| project%123
|
마일스톤 (한 단어로 기반)2 | %v1.23
| namespace/project%v1.23
| project%v1.23
|
마일스톤 (여러 단어로 기반)2 | %"release candidate"
| namespace/project%"release candidate"
| project%"release candidate"
|
커밋 (특정) | 9ba12248
| namespace/project@9ba12248
| project@9ba12248
|
커밋 범위 비교 | 9ba12248...b19a04f5
| namespace/project@9ba12248...b19a04f5
| project@9ba12248...b19a04f5
|
저장소 파일 참조 | [README](doc/README.md)
| ||
저장소 파일 참조 (특정 라인) | [README](doc/README.md#L13)
| ||
알림 | ^alert#123
| namespace/project^alert#123
| project^alert#123
|
연락처 | [contact:test@example.com]
| ||
위키 페이지 (페이지 슬러그가 제목과 동일한 경우) | [[Home]]
| ||
위키 페이지 (페이지 슬러그가 제목과 다른 경우) | [[GitLab 사용 방법\|how-to-use-gitlab]]
|
각주:
- GitLab 16.9에서 도입.
이터레이션 주기 참조는 항상
[cadence:<ID>]
형식을 따릅니다. 예를 들어, 참조된 이터레이션 주기의 ID가1
인 경우 텍스트 참조[cadence:"plan"]
는[cadence:1]
로 렌더링됩니다. - 라벨이나 마일스톤의 경우
namespace/project
앞에/
를 붙여 해당 라벨이나 마일스톤을 명확히 지정합니다.
예를 들어, #123
을 사용하여 이슈를 참조하면 출력이 #123
텍스트로 이슈 번호 123에 대한 링크로 형식화됩니다. 마찬가지로, 이슈 번호 123에 대한 링크는 #123
텍스트로 인식되어 형식화됩니다. #123
이 이슈로 연결되지 않게 하려면 선행 백슬래시 \#123
를 추가하세요.
또한, 일부 객체에 대한 링크도 인식되어 형식화됩니다. 예를 들어:
- 이슈의 코멘트:
"https://gitlab.com/gitlab-org/gitlab/-/issues/1234#note_101075757"
는#1234 (comment 101075757)
로 렌더링됩니다. - 이슈 디자인 탭:
"https://gitlab.com/gitlab-org/gitlab/-/issues/1234/designs"
는#1234 (designs)
로 렌더링됩니다. - 개별 디자인에 대한 링크:
"https://gitlab.com/gitlab-org/gitlab/-/issues/1234/designs/layout.png"
는#1234[layout.png]
로 렌더링됩니다.
항목 제목 표시
- GitLab 16.0에서 도입된 작업 항목(작업, 목표 및 핵심 결과) 지원.
이슈, 작업, 목표, 핵심 결과, 병합 요청 또는 에픽의 제목을 렌더링된 링크에 포함하려면 참조 끝에 플러스(+
)를 추가합니다.
예를 들어, #123+
와 같은 참조는 이슈 제목 (#123)
로 렌더링됩니다.
https://gitlab.com/gitlab-org/gitlab/-/issues/1234+
와 같은 URL 참조도 확장됩니다.
항목 요약 표시
이슈, 작업, 목표, 핵심 결과 또는 병합 요청의 렌더링된 링크에 확장된 요약을 포함하려면 참조 끝에 +s
를 추가합니다.
요약에는 참조된 항목의 담당자, 마일스톤 및 상태에 대한 정보가 포함됩니다.
예를 들어, #123+s
와 같은 참조는 이슈 제목 (#123) • 첫 번째 담당자, 두 번째 담당자+ • v15.10 • 주의가 필요함
으로 렌더링됩니다.
https://gitlab.com/gitlab-org/gitlab/-/issues/1234+s
와 같은 URL 참조도 확장됩니다.
담당자, 마일스톤 또는 상태가 변경된 경우 렌더링된 참조를 업데이트하려면:
- 코멘트 또는 설명을 편집하고 저장하세요.
이슈 420807는 이러한 참조의 새로고침 개선을 추적합니다.
링크에 호버하면 코멘트 미리보기 표시
- GitLab 17.3에서 플래그
comment_tooltips
로 도입되었습니다. 기본적으로 비활성화됩니다.
플래그: 이 기능의 가용성은 피처 플래그로 제어됩니다. 자세한 정보는 히스토리를 참조하십시오. 이 기능은 테스트용으로 제공되지만 프로덕션 환경에서 사용할 수 없습니다.
이 기능이 활성화된 경우 링크에 호버하면 작성자와 코멘트 일부가 표시됩니다.
이 기능이 비활성화된 경우 링크에 호버하면 이슈 또는 에픽과 같은 항목에 대한 정보가 표시됩니다.
Observability 대시보드 임베딩
GitLab Observability UI 대시보드 설명 및 코멘트를 포함하여 에픽, 이슈 및 MR 등에 임베딩할 수 있습니다.
Observability 대시보드 URL을 임베드하려면:
- GitLab Observability UI에서 주소 창의 URL을 복사합니다.
- 링크를 코멘트나 설명에 붙여넣습니다. GitLab Flavored Markdown는 URL을 인식하고 소스를 표시합니다.
참조
- GitLab Flavored Markdown (GLFM) development guidelines는 GLFM 명세와 관련된 여러 목표, 도구, 구현 및 용어에 대해 자세히 설명하는 개발자 문서입니다.
- 본 문서는 Markdown-Cheatsheet에서 많은 영감을 받았습니다.
- Daring Fireball의 원본 Markdown Syntax Guide는 표준 Markdown의 상세한 설명을 제공하는 훌륭한 자료입니다.
- CommonMark의 자세한 명세는 CommonMark Spec에서 찾을 수 있습니다.
- CommonMark Dingus를 사용하여 CommonMark 구문을 테스트할 수 있습니다.