파일 관리
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 및 인덱스 파일
리포지토리에 README
또는 index
파일이 있는 경우, GitLab은 그 내용으로 렌더링합니다. 이러한 파일은 일반 텍스트일 수도 있고 지원되는 마크업 언어의 확장자를 가질 수도 있습니다.
-
README
와index
파일이 모두 있는 경우,README
가 우선합니다. -
동일한 이름의 여러 파일이 서로 다른 확장자를 가지는 경우, 파일은 알파벳 순으로 정렬됩니다. GitLab은 확장자가 없는 파일을 마지막에 정렬합니다, 다음과 같이:
README.adoc
README.md
README.rst
-
README
.
OpenAPI 파일 렌더링
GitLab은 파일 이름에 openapi
또는 swagger
가 포함되고, 확장자가 yaml
, yml
, 또는 json
인 경우 OpenAPI 사양 파일을 렌더링합니다. 다음 예시는 모두 올바릅니다:
-
openapi.yml
,openapi.yaml
,openapi.json
-
swagger.yml
,swagger.yaml
,swagger.json
-
OpenAPI.YML
,openapi.Yaml
,openapi.JSON
-
openapi_gitlab.yml
,openapi.gitlab.yml
gitlab_swagger.yml
gitlab.openapi.yml
OpenAPI 파일을 렌더링하려면:
- 파일 검색
- 렌더링된 파일 표시를 선택합니다.
- 운영 목록에
operationId
를 표시하려면, 쿼리 문자열에displayOperationId=true
를 추가합니다.
displayOperationId
가 존재하고 어떤 값이든 경우, 이는 true
로 평가됩니다. 이 동작은 Swagger의 기본 동작과 일치합니다.파일의 Git 기록 보기
저장소의 파일에 대한 역사적 정보는 GitLab UI에서 확인할 수 있습니다:
파일 검색하기
- GitLab 16.11에서 대화 상자로 변경되었습니다. 변경됨.
파일 찾기를 사용하여 GitLab UI에서 직접 저장소의 파일을 검색할 수 있습니다. 파일 찾기는 퍼지 검색을 사용하며 입력하는 대로 결과를 강조합니다.
파일을 검색하려면 프로젝트 내의 아무 곳에서 t를 누르거나:
-
왼쪽 사이드바에서 검색 또는 이동을 선택하고 프로젝트를 찾습니다.
-
코드 > 저장소를 선택합니다.
-
오른쪽 상단에서 파일 찾기를 선택합니다.
-
대화 상자에서 파일 이름을 입력하기 시작합니다:
- 선택 사항. 검색 옵션을 좁히고 싶다면, Command + K를 누르거나 대화 상자 오른쪽 하단의 명령을 선택합니다:
- 페이지 또는 작업에 대해, >를 입력합니다.
- 사용자에 대해, @를 입력합니다.
- 프로젝트에 대해, :를 입력합니다.
- 파일에 대해, ~ 입력합니다.
- 드롭다운 목록에서 파일을 선택하여 저장소에서 엽니다.
파일 페이지로 돌아가려면 Esc를 눌러주세요.
이 기능은 fuzzaldrin-plus
라이브러리를 사용합니다.
Git이 파일을 처리하는 방식 변경하기
파일 또는 파일 유형에 대한 기본 처리를 변경하려면
.gitattributes
파일을 만듭니다. .gitattributes
파일을 사용하여:
- 구문 강조와 같은 diff에서 파일 표시 구성, 또는 생성된 파일 축소.
- 파일을 읽기 전용으로 만들기와 같이 파일 저장 및 보호 제어, 또는 대용량 파일을 Git LFS로 저장합니다.
관련 주제
문제 해결
저장소 언어: 과도한 CPU 사용
저장소의 파일에 어떤 언어가 있는지 확인하기 위해 GitLab은 Ruby 젬을 사용합니다.
젬이 파일을 파싱하여 파일 유형을 결정할 때, 프로세스가 과도한 CPU를 사용할 수 있습니다.
젬에는 파싱할 파일 확장자를 정의하는 휴리스틱 구성 파일이 포함되어 있습니다. 이러한 파일 유형은 과도한 CPU를 사용할 수 있습니다:
-
.txt
확장자를 가진 파일. - 젬에 의해 정의되지 않은 확장을 가진 XML 파일.
이 문제를 해결하려면, .gitattributes
파일을 수정하고 특정 파일 확장자에 언어를 지정합니다.
잘못 식별된 파일 유형을 수정하는 데도 이 방법을 사용할 수 있습니다:
-
명시할 언어를 식별합니다. 이 젬에는 알려진 데이터 유형에 대한 구성 파일이 포함되어 있습니다.
-
예를 들어 텍스트 파일에 대한 항목을 추가하려면:
Text: type: prose wrap: true aliases: - fundamental - plain text extensions: - ".txt"
-
저장소의 루트에
.gitattributes
를 추가하거나 수정합니다:*.txt linguist-language=Text
*.txt
파일은 휴리스틱 파일에 항목이 있습니다. 이 예는 이러한 파일의 파싱을 방지합니다.