{{< details >}}
- Tier: 基础版,专业版,旗舰版
- Offering: JihuLab.com, 私有化部署
{{< /details >}}
使用极狐GitLab 代码片段,您可以与其他用户存储和分享代码片段和文本。您可以在代码片段中评论、克隆、以及使用版本控制。代码片段可以包含多个文件。它们还支持语法高亮、嵌入、下载,您可以使用代码片段 API来维护您的代码片段。
您可以通过以下方式创建和管理您的代码片段:
- 极狐GitLab 用户界面。
- VS Code 的极狐GitLab 工作流扩展。
-
glab
CLI。
极狐GitLab 提供两种类型的代码片段:
- 个人代码片段:独立于任何项目创建。您可以为您的代码片段设置可见性级别:公开或私有。
- 项目代码片段:始终与特定项目相关。项目代码片段可以公开可见,或者仅对项目成员可见。
{{< alert type=”note” >}}
从 2019 年 7 月起,内部
可见性设置在 JihuLab.com 上已禁用新的项目、群组和代码片段。现有使用 内部
可见性设置的代码片段保持此设置。
{{< /alert >}}
创建代码片段
您可以通过多种方式创建代码片段,具体取决于您是想创建个人代码片段还是项目代码片段:
- 选择您要创建的代码片段类型:
-
要创建个人代码片段,请执行以下操作之一:
- 在代码片段仪表板上,选择新代码片段。
- 从项目:在左侧边栏中,选择创建新 ({{< icon name=”plus” >}})。在极狐GitLab 中,选择新代码片段。
- 从任何其他页面:在左侧边栏中,选择创建新 ({{< icon name=”plus” >}}),然后选择新代码片段。
- 从
glab
CLI,使用glab snippet create
命令。有关完整说明,请参阅命令的文档。 - 如果您安装了VS Code 的极狐GitLab 工作流扩展,使用
Gitlab: Create snippet
命令。
- 要创建项目代码片段:转到项目页面。选择创建新 ({{< icon name=”plus” >}})。在此项目中,选择新代码片段。
-
要创建个人代码片段,请执行以下操作之一:
- 在标题中,添加标题。
- 可选。在描述中,描述代码片段。
- 在文件中,为您的文件提供适当的名称和扩展名,例如
example.rb
或index.html
。具有适当扩展名的文件名显示语法高亮。如果您不提供文件名,极狐GitLab 为您创建一个名称。 - 可选。为您的代码片段添加多个文件。
- 选择可见性级别,然后选择创建代码片段。
创建代码片段后,您仍然可以向其添加更多文件。代码片段默认是版本化的。
发现代码片段
要发现极狐GitLab 中对您可见的所有代码片段,您可以:
-
查看项目的代码片段:
- 在左侧边栏中,选择搜索或转到并找到您的项目。
- 选择代码 > 代码片段。
-
查看您创建的所有代码片段:
- 在左侧边栏中,选择搜索或转到。
- 选择您的工作。
- 选择代码片段。
在 JihuLab.com 上,您还可以直接访问您的代码片段。
-
探索所有公开的代码片段:
- 在左侧边栏中,选择搜索或转到。
- 选择探索。
- 选择代码片段。
在 JihuLab.com 上,您还可以直接访问所有公开代码片段。
更改代码片段的默认可见性
项目代码片段默认情况下是启用和可用的。要更改其默认可见性:
- 在您的项目中,转到设置 > 常规。
- 展开可见性、项目功能、权限部分,并滚动到代码片段。
- 切换默认可见性,并选择代码片段是可以被所有人查看,还是仅限项目成员。
- 选择保存更改。
版本化代码片段
个人和项目代码片段默认使用版本控制。
这意味着所有代码片段在创建时都有自己的基础存储库,并在默认分支中初始化。每当代码片段保存更改时,会记录到默认分支的新提交。提交消息是自动生成的。代码片段的存储库只有一个分支。您不能删除此分支,也不能创建其他分支。
文件名
代码片段支持基于文件名和扩展名的语法高亮。您可以提交没有文件名和扩展名的代码片段,但有效名称是将内容创建为存储库中的文件所必需的。
如果没有为代码片段提供文件名和扩展名,极狐GitLab 会以 snippetfile<x>.txt
的格式添加文件名,其中 <x>
代表添加到文件的数字,从 1 开始。如果您添加更多未命名的代码片段,则此数字递增。
从极狐GitLab 的早期版本升级到 13.0 时,现有的代码片段没有支持的文件名会重命名为兼容格式。例如,如果代码片段的文件名是 http://a-weird-filename.me
,则会更改为 http-a-weird-filename-me
以包含在代码片段的存储库中。由于代码片段通过 ID 存储,更改其文件名会破坏对代码片段的直接或嵌入链接。
添加或删除多个文件
单个代码片段最多可以支持 10 个文件,这有助于将相关文件放在一起,例如:
- 包含脚本及其输出的代码片段。
- 包含 HTML、CSS 和 JavaScript 代码的代码片段。
- 具有
docker-compose.yml
文件及其关联.env
文件的代码片段。 -
gulpfile.js
文件和package.json
文件,这两个文件可以一起用于启动项目并管理其依赖项。
如果您的代码片段需要超过 10 个文件,您应该创建一个维基。维基对于所有订阅级别的项目以及群组都可用,适用于极狐GitLab 专业版。
具有多个文件的代码片段在代码片段列表中显示文件数量:
您可以通过 Git 管理代码片段(因为它们通过 Git 存储库版本化),通过代码片段 API,以及在极狐GitLab UI 中。
要通过极狐GitLab UI 向您的代码片段添加新文件:
- 在极狐GitLab UI 中转到您的代码片段。
- 在右上角选择编辑。
- 选择添加另一个文件。
- 将您的内容添加到提供的表单字段中的文件中。
- 选择保存更改。
要通过极狐GitLab UI 从代码片段中删除文件:
- 在极狐GitLab UI 中转到您的代码片段。
- 在右上角选择编辑。
- 选择要删除的每个文件名旁边的删除文件。
- 选择保存更改。
克隆代码片段
为了确保您收到更新,克隆代码片段而不是在本地复制。克隆保持代码片段与存储库的连接。
要克隆代码片段:
- 选择克隆,然后复制 URL 以通过 SSH 或 HTTPS 克隆。
您可以提交对克隆代码片段的更改,并将更改推送到极狐GitLab。
嵌入代码片段
公开代码片段可以在任何网站上共享和嵌入。您可以在多个地方重用极狐GitLab 代码片段,并且对源的任何更改都会反映在嵌入代码片段中。嵌入时,用户可以下载它或以原始格式查看代码片段。
要嵌入代码片段:
- 确认您的代码片段是公开可见的:
- 如果是项目代码片段,项目必须是公开的。
- 代码片段是公开可见的。
- 在您的项目中,转到设置 > 常规。展开可见性、项目功能、权限部分,并滚动到代码片段。将代码片段权限设置为有访问权限的每个人。
-
在代码片段的嵌入部分,选择复制以复制一个单行脚本,您可以将其添加到任何网站或博客文章中。例如:
<script src="https://jihulab.com/namespace/project/snippets/SNIPPET_ID.js"></script>
- 将您的脚本添加到您的文件中。
嵌入代码片段显示一个标题,其中显示:
- 如果定义了,则显示文件名。
- 代码片段大小。
- 到极狐GitLab 的链接。
- 实际代码片段内容。
例如:
下载代码片段
您可以下载代码片段的原始内容。默认情况下,它们以 Linux 风格的行结尾(LF
)下载。如果您希望保留原始行结尾,您必须添加参数 line_ending=raw
(例如:https://jihulab.com/snippets/SNIPPET_ID/raw?line_ending=raw
)。如果代码片段是使用极狐GitLab 网页界面创建的,则原始行结尾是 Windows 风格的(CRLF
)。
对代码片段评论
使用代码片段,您可以就该代码片段进行讨论,这可以鼓励用户协作。
将代码片段标记为垃圾
{{< details >}}
- Tier: Free, Premium, Ultimate
- Offering: 极狐GitLab 私有化部署, 极狐GitLab 专属
{{< /details >}}
极狐GitLab 私有化部署的管理员可以将代码片段标记为垃圾。
前提条件:
- 您必须是您实例的管理员。
- 必须在实例上启用 Akismet 垃圾保护。
执行此任务:
- 在左侧边栏中,选择搜索或转到并找到您的项目。
- 选择代码 > 代码片段。
- 选择要报告为垃圾的代码片段。
- 选择提交为垃圾。
极狐GitLab 将垃圾转发给 Akismet。
故障排除
代码片段限制
- 没有限制创建代码片段的数量。
- 不支持二进制文件。
- 不支持创建或删除分支。仅使用默认分支。
- 代码片段存储库中不支持 Git 标签。
- 代码片段的存储库限制为 10 个文件。尝试推送超过 10 个文件会导致错误。
- 修订在极狐GitLab UI 上对用户不可见。
- 当前(截至 2024-04-17)代码片段的最大大小默认为 50 MB。
- 不支持 Git LFS。
减少代码片段存储库大小
因为版本化代码片段被视为命名空间存储大小的一部分,建议尽可能保持代码片段存储库紧凑。
有关压缩存储库的工具的更多信息,请参阅关于减少存储库大小的文档。
无法在代码片段文本框中输入文本
如果文件名字段之后的文本区域被禁用并阻止您创建新的代码片段,请使用此解决方法:
- 输入代码片段的标题。
- 滚动到文件字段底部,然后选择添加另一个文件。极狐GitLab 显示一组字段以添加第二个文件。
- 在第二个文件的文件名字段中输入文件名以避免已知的复制粘贴错误。
- 在第二个文件的文本区域中输入任意字符串。
- 滚动回第一个文件名,选择删除文件。
- 创建文件的其余部分,并在完成时选择创建代码片段。