文件管理

在你的浏览器里的极狐GitLab UI 扩展了 Git 的历史和追踪能力,并带有用户友好的功能。你可以:

  • 搜索文件。
  • 变更文件处理。
  • 探索所有文件,或单个文件的历史

理解 UI 里怎么渲染文件类型:

当你添加这些类型的文件到你的项目里,极狐GitLab 会渲染他们的输出以提升可阅读性:

  • GeoJSON 文件显示为一个地图
  • Jupyter Notebook 文件显示为渲染后的 HTML。
  • 许多标记语言文件会渲染后显示

支持的标记语言

如果你的文件有下面的文件扩展,极狐GitLab 会在 UI 里渲染这些文件的标记语言

标记语言 扩展
纯文本 txt
Markdown mdown, mkd, md, markdown
reStructuredText rst
AsciiDoc adoc, ad, asciidoc
Textile textile
Rdoc rdoc
org mode org
creole creole
MediaWiki wiki, mediawiki

README 和 index 文件

当一个 READMEindex 文件出现在仓库里,极狐GitLab 会渲染它的内容。这些文件可以是纯文本文或者拥有支持的标记文件扩展。

  • READMEindex 文件同时出现在仓库里,README 文件有限。
  • 当多个文件拥有相同名称,不同的扩展名,这些文件按字母顺序排序。极狐GitLab 把没有扩展名的文件排在最后。像下面这样:

    1. README.adoc
    2. README.md
    3. README.rst
    4. README

渲染 OpenAPI 文件

如果文件名包含 openapiswagger,并且扩展名是 yamljson,极狐GitLab 会渲染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 文件:

  1. 在你的仓库里搜索 OpenAPI 文件。
  2. 点击 显示渲染的文件
  3. 要在操作列表里显示 operationId,在查询字符串里添加 displayOerationId=true
note displayOperationId 出现在查询字符串里并且具有任意值,它等同于 true。这个特效匹配 Swagger 的默认特性。

查看文件的 Git 记录

在极狐GitLab UI 里可以看到仓库里的文件的历史信息:

  • Git文件历史:显示实体文件的提交历史。
  • Git blame:显示基于文本的文件每一行,以及修改这一行的最近一次提交。

搜索文件

历史记录:

  • 在极狐GitLab 16.11 里修改为对话框

直接从极狐GitLab UI 上的文件查找器直接在您的仓库里搜索文件,文件查找器使用模糊搜索并且在结果中高亮显示您的输入。

要搜索一个文件,在你的项目任意位置按 t,或者:

  1. 在左侧栏,点击 搜索或转到 并找到您的项目。
  2. 点击 代码 > 仓库
  3. 在右上角,选择 查找文件
  4. 在对话框里,开始输入文件名。

文件查找器

  1. 可选。要缩小搜索选项,按 Command + K 或者选择对话框右下角的 Commands
  • 对于 Pages 或动作,按 >
  • 对于 用户, 按 @
  • 对于 项目,按 :
  • 对于 文件,按 ~
  1. 从下拉列表里,选择文件并在你的仓库里查看它。o

要回到 文件 页面,按 ESC

这个功能使用 fuzzaldrin-plus

修改 Git 怎么处理文件

要修改默认的文件或文件类型的处理,创建一个 .gitattributes 文件,使用 .gitattributes 文件来:

关联主题

故障排查

仓库语言:CPU 使用率过高

要确定什么语言在仓库的文件里,极狐GitLab 使用一个 Ruby gem。当这个 gem 解析一个文件来确定它的文件类型,进程可能使用过量的CPU,gem 包含一个启发式配置文件,定义了要解析的文件扩展名。这些文件类型会占用过量 CPU :

  • 使用 .txt 扩展的文件。
  • XML 文件使用 gem 里没有定义的扩展。

要修复这个问题,编辑你的 .gitattributes 文件并为特定文件扩展名分配一门语言。你也可以使用这种方式来修复误识别的文件类型:

  1. 确定要指定的语言,这个 gem 包含一个 已知数据类型的配置文件
  2. 添加一个文本文件的条目,例如
  Text:
    type: prose
    wrap: true
    aliases:
    - fundamental
    - plain text
    extensions:
    - ".txt"
  1. 在您的仓库根目录下添加或者编辑 .gitattributes 文件:
  *.txt linguist-language=Text

*.txt 文件在启发文件里有个条目,这个示例阻止解析这些文件。