파일 관리
Offering: 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 |
| reStructuredText | rst |
| AsciiDoc | adoc, ad, asciidoc |
| Textile | textile |
| Rdoc | rdoc |
| Org mode | org |
| creole | creole |
| MediaWiki | wiki, mediawiki |
README 및 인덱스 파일#
히스토리
- GitLab 18.5에서
_index.md파일 지원이 도입됨.
저장소에 README, index 또는 _index 파일이 있으면 GitLab은 해당 파일의 콘텐츠를 렌더링합니다.
이 파일들은 일반 텍스트이거나 지원되는 마크업 언어의 확장자를 가질 수 있습니다.
자동 렌더링의 우선순위 순서는 다음과 같습니다:
- 미리 보기 가능한 파일:
README.md,index.md,_index.md등 - 일반 텍스트 파일:
README,index,_index등
각 카테고리에서 찾은 첫 번째 파일(알파벳 순서)이 선택되며, 미리 보기 가능한 파일이 일반 텍스트 파일보다 우선합니다. 예를 들어 여러 README가 있는 경우 GitLab은 다음 순서로 렌더링합니다:
README.adocREADME.mdREADME.rstREADME
OpenAPI 파일 렌더링#
GitLab은 파일명에 openapi 또는 swagger가 포함되고 확장자가 yaml, yml, 또는 json인 경우 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의 기본 동작과 일치합니다.
파일의 Git 기록 보기#
저장소의 파일에 대한 기록 정보는 GitLab UI에서 확인할 수 있습니다:
퍼머링크 만들기#
퍼머링크는 저장소의 특정 파일, 디렉토리 또는 코드 섹션을 가리키는 영구 URL입니다. 저장소가 변경되어도 유효하므로 문서, 이슈 또는 머지 리퀘스트에서 코드를 공유하고 참조하는 데 이상적입니다.
퍼머링크를 만들려면:
- 상단 바에서 Search or go to를 선택하고 프로젝트를 찾습니다.
- 링크할 파일 또는 디렉토리로 이동합니다.
- 선택 사항. 특정 코드 선택에 대해:
- 단일 줄: 줄 번호를 선택합니다.
- 여러 줄: 첫 번째 줄 번호를 선택한 다음 Shift를 누른 채로 마지막 줄 번호를 선택합니다.
- Markdown 앵커: 제목 위에 마우스를 올려 앵커 링크([link])를 표시하고 선택합니다.
- Actions(⋮)를 선택한 다음 Copy Permalink를 선택합니다. 또는 y를 누릅니다. 더 많은 단축키는 키보드 단축키를 참조하세요.
파일의 열린 머지 리퀘스트 보기#
히스토리
- GitLab 17.10에서
filter_blob_path라는 플래그와 함께 도입됨. - 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 16.11에서 대화 상자로 변경됨.
파일 찾기를 사용하여 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파일은 휴리스틱 파일에 항목이 있습니다. 이 예시는 이러한 파일의 파싱을 방지합니다.
