파일 관리
GitLab v19.5Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
요약
GitLab UI는 브라우저에서 사용하기 쉬운 기능으로 Git의 이력 및 추적 기능을 확장합니다. 프로젝트에 다음 유형의 파일을 추가하면 GitLab 이 가독성을 높이기 위해 해당 출력을 렌더링합니다. 파일 확장자가 다음 중 하나이면 GitLab 이 UI에서 해당 파일의 마크업 언어 콘텐츠를 렌더링합니다.
GitLab UI는 브라우저에서 사용하기 쉬운 기능으로 Git의 이력 및 추적 기능을 확장합니다. 다음 작업을 수행할 수 있습니다.
- 파일을 검색합니다.
- 파일 처리 방식을 변경합니다.
- 파일 전체 또는 특정 한 줄의 이력을 살펴봅니다.
UI에서 파일 유형이 렌더링되는 방식 이해#
프로젝트에 다음 유형의 파일을 추가하면 GitLab 이 가독성을 높이기 위해 해당 출력을 렌더링합니다.
- GeoJSON 파일은 지도로 표시됩니다.
- Jupyter Notebook 파일은 렌더링된 HTML로 표시됩니다.
- 여러 마크업 언어로 작성된 파일은 표시를 위해 렌더링됩니다.
지원되는 마크업 언어#
파일 확장자가 다음 중 하나이면 GitLab 이 UI에서 해당 파일의 마크업 언어 콘텐츠를 렌더링합니다.
| 마크업 언어 | 확장자 |
|---|---|
| 일반 텍스트 | txt |
| Markdown | mdown, mkd, mkdn, md, markdown, rmd |
| reStructuredText | rst |
| AsciiDoc | adoc, ad, asciidoc |
| Textile | textile |
| Rdoc | rdoc |
| Org mode | org |
| creole | creole |
| MediaWiki | wiki, mediawiki |
지원되는 다이어그램 형식#
파일 확장자가 다음 중 하나이면 GitLab 이 UI에서 해당 파일의 콘텐츠를 다이어그램으로 렌더링합니다.
| 다이어그램 형식 | 확장자 | 가용성 |
|---|---|---|
| Mermaid1 | mermaid |
항상 사용할 수 있습니다. |
| PlantUML2 | plantuml, pu, puml, iuml |
관리자가 PlantUML 통합을 활성화해야 합니다. |
| Kroki2 | d2, dot, gv, noml, plantuml, pu, puml, iuml, vg, vl |
관리자가 Kroki 통합을 활성화해야 합니다. |
다이어그램 구문에 대한 자세한 내용은 Markdown의 다이어그램과 AsciiDoc의 다이어그램을 참고합니다.
README 및 인덱스 파일#
히스토리
_index.md파일 지원이 GitLab 18.5에서 도입되었습니다.
리포지터리에 README, index 또는 _index 파일이 있으면 GitLab 이 해당 콘텐츠를 렌더링합니다.
이 파일은 일반 텍스트이거나 지원되는 마크업 언어의 확장자를
가질 수 있습니다.
자동 렌더링의 우선순위는 다음과 같습니다.
- 미리 보기가 가능한 파일:
README.md,index.md,_index.md등 - 일반 텍스트 파일:
README,index,_index등
각 범주에서 알파벳 순으로 처음 발견된 파일이 선택되며, 미리 보기가 가능한 파일이 일반 텍스트 파일보다 우선합니다. 예를 들어 README가 여러 개 있으면 GitLab 이 다음 순서로 렌더링합니다.
README.adocREADME.mdREADME.rstREADME
OpenAPI 파일 렌더링#
파일명에 openapi 또는 swagger가 포함되고 확장자가 yaml, yml, json 이면
GitLab 이 OpenAPI 명세 파일을 렌더링합니다. 다음 예시는 모두 올바릅니다.
openapi.yml,openapi.yaml,openapi.jsonswagger.yml,swagger.yaml,swagger.jsonOpenAPI.YML,openapi.Yaml,openapi.JSONopenapi_gitlab.yml,openapi.gitlab.ymlgitlab_swagger.ymlgitlab.openapi.yml
OpenAPI 파일을 렌더링하려면 다음 단계를 수행합니다.
- 리포지터리에서 OpenAPI 파일을 검색합니다.
- Display rendered file을 선택합니다.
- 작업 목록에
operationId를 표시하려면 쿼리 문자열에displayOperationId=true를 추가합니다.
displayOperationId가 쿼리 문자열에 있고 값이 무엇이든 지정되어 있으면
true로 평가됩니다. 이 동작은 Swagger의 기본 동작과 같습니다.
Markdown 파일을 PDF로 인쇄#
이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참고합니다.
Markdown 파일을 PDF로 인쇄하면 렌더링된 콘텐츠를 공유하거나 보관하기 위해 저장할 수 있습니다. Markdown 파일을 볼 때 Download 작업은 두 가지 옵션이 있는 드롭다운 목록으로 표시됩니다. Download as Markdown과 Print as PDF 입니다.
Markdown 파일을 PDF로 인쇄하려면 다음 단계를 수행합니다.
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 인쇄할 Markdown 파일로 이동합니다.
- 오른쪽 상단에서 Download ([download]) > Print as PDF를 선택합니다.
- 브라우저의 인쇄 대화 상자에서 파일을 PDF로 저장합니다.
파일의 Git 기록 보기#
리포지터리에 있는 파일의 이력 정보는 GitLab UI에서 확인할 수 있습니다.
퍼머링크 만들기#
퍼머링크는 리포지터리의 특정 파일, 디렉터리 또는 코드 구간을 가리키는 영구 URL 입니다. 리포지터리가 변경되어도 유효하므로 문서, 이슈, 머지 리퀘스트에서 코드를 공유하고 참조하는 데 적합합니다.
퍼머링크를 만들려면 다음 단계를 수행합니다.
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 링크할 파일 또는 디렉터리로 이동합니다.
- 선택 사항. 특정 코드를 선택하는 경우:
- 한 줄: 줄 번호를 선택합니다.
- 여러 줄: 첫 번째 줄 번호를 선택한 다음 Shift를 누른 채로 마지막 줄 번호를 선택합니다.
- Markdown 앵커: 제목 위에 포인터를 올려 앵커 링크([link])를 표시한 다음 선택합니다.
- Actions (⋮)를 선택한 다음 Copy Permalink를 선택합니다. 또는 y를 누릅니다. 다른 단축키는 키보드 단축키를 참고합니다.
파일의 특정 줄에 대한 퍼머링크를 댓글이나 설명에 붙여 넣으면 GitLab 이 링크 대신 코드를 삽입할 수 있습니다.
파일의 열린 머지 리퀘스트 보기#
히스토리
filter_blob_path라는 기능 플래그와 함께 GitLab 17.10에서 도입되었습니다.- GitLab 17.11에서 GitLab.com에 활성화되었습니다.
- GitLab 18.0에서 GitLab Self-Managed 및 GitLab Dedicated에 활성화되었습니다.
- GitLab 18.2에서 일반 공개되었습니다. 기능 플래그
filter_blob_path가 제거되었습니다.
이 기능의 가용성은 기능 플래그로 제어됩니다. 자세한 내용은 히스토리를 참고합니다.
리포지터리 파일을 볼 때 GitLab은 현재 브랜치를 대상으로 하면서 해당 파일을 수정하는 열린 머지 리퀘스트 수를 배지로 표시합니다. 이를 통해 변경이 대기 중인 파일을 확인할 수 있습니다.
파일의 열린 머지 리퀘스트를 보려면 다음 단계를 수행합니다.
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 확인할 파일로 이동합니다.
- 화면 오른쪽 상단의 파일명 옆에서 [merge-request-open] Open 머지 리퀘스트 수가 표시된 녹색 배지를 확인합니다.
- 배지를 선택해 최근 30일 이내에 생성된 열린 머지 리퀘스트 목록을 확인합니다.
- 목록에서 머지 리퀘스트를 선택해 해당 머지 리퀘스트로 이동합니다.
파일 검색#
파일 찾기를 사용하면 GitLab UI에서 바로 리포지터리의 파일을 검색할 수 있습니다. 파일 찾기는 퍼지 검색을 사용하며 입력하는 동안 결과를 강조 표시합니다.
파일을 검색하려면 프로젝트의 어느 화면에서든 t를 누르거나 다음 단계를 수행합니다.
-
상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
-
왼쪽 사이드바에서 Code > Repository를 선택합니다.
-
오른쪽 상단에서 Find file을 선택합니다.
-
대화 상자에서 파일명을 입력하기 시작합니다.

-
선택 사항. 검색 옵션을 좁히려면 Command+K를 누르거나 대화 상자 오른쪽 하단에서 Commands를 선택합니다.
- Pages or actions는 >를 입력합니다.
- Users는 @를 입력합니다.
- Projects는 :를 입력합니다.
- Files는 ~를 입력합니다.
-
드롭다운 목록에서 파일을 선택해 리포지터리에서 확인합니다.
Files 페이지로 돌아가려면 Esc를 누릅니다.
이 기능은 fuzzaldrin-plus 라이브러리를 사용합니다.
Git의 파일 처리 방식 변경#
파일 또는 파일 유형의 기본 처리 방식을 변경하려면
.gitattributes 파일을 만듭니다. .gitattributes 파일로 다음 작업을 수행합니다.
- 구문 강조나 생성된 파일 접기처럼 diff에서 파일이 표시되는 방식을 구성합니다.
- 파일을 읽기 전용으로 만들기나 Git LFS로 대용량 파일 저장하기처럼 파일 저장과 보호를 제어합니다.
관련 주제#
문제 해결#
리포지터리 언어: 과도한 CPU 사용#
리포지터리 파일에 어떤 언어가 쓰였는지 판별하기 위해 GitLab은 Ruby gem을 사용합니다. gem 이 파일 유형을 판별하려고 파일을 파싱할 때 해당 프로세스가 CPU를 과도하게 사용할 수 있습니다. 이 gem에는 파싱할 파일 확장자를 정의하는 휴리스틱 구성 파일이 들어 있습니다. 다음 파일 유형은 CPU를 과도하게 사용할 수 있습니다.
.txt확장자를 가진 파일- gem에 정의되어 있지 않은 확장자를 가진 XML 파일
이 문제를 해결하려면 .gitattributes 파일을 편집해 특정 파일 확장자에 언어를
지정합니다. 잘못 식별된 파일 유형을 바로잡을 때도 같은 방법을 사용할 수 있습니다.
-
지정할 언어를 확인합니다. 이 gem에는 알려진 데이터 유형에 대한 구성 파일이 들어 있습니다.
-
예를 들어 텍스트 파일에 대한 항목을 추가하려면 다음과 같이 작성합니다.
Text: type: prose wrap: true aliases: - fundamental - plain text extensions: - ".txt" -
리포지터리 루트에서
.gitattributes파일을 추가하거나 편집합니다.*.txt linguist-language=Text*.txt파일은 휴리스틱 파일에 항목이 있습니다. 이 예시는 해당 파일의 파싱을 방지합니다.