|
|
# 代码片
|
|
|
|
|
|
借助 CODE CHINA 代码片段,您可以存储或与其他用户共享代码和文本。
|
|
|
|
|
|
片段类型有两种:
|
|
|
|
|
|
* 个人代码片
|
|
|
* 项目代码片
|
|
|
|
|
|
## 个人代码片[](#personal-snippets "Permalink")
|
|
|
|
|
|
个人代码片与任何项目均无关,可以完全独立地创建。与项目一样,代码片可以设置两种可见性级别,公开和私有。
|
|
|
|
|
|
## 项目代码片[](#project-snippets "Permalink")
|
|
|
|
|
|
项目代码片始终与特定项目相关。有关更多信息,请参见[项目功能](/docs/user/project)。
|
|
|
|
|
|
## 创建代码片[](#create-a-snippet "Permalink")
|
|
|
|
|
|
要创建个人代码片,请点击加号图标( ),然后从下拉菜单中选择" **新建代码片** ":
|
|
|
|
|
|
如果您在项目页面上,但要创建一个新的个人代码片,请点击加号图标( ),然后从下拉菜单的下部选择**新代码片** :
|
|
|
|
|
|
要创建项目代码片,请导航到您的项目页面,然后点击加号图标( ),然后从下拉菜单的上方选择**新建代码片** ( **此项目** ).
|
|
|
|
|
|
然后在新建代码片页面中添加**标题** , **描述**和带有适当扩展名的**文件名**(例如`example.rb` , `index.html` ).
|
|
|
|
|
|
**警告:**确保添加文件名以突出显示代码。
|
|
|
|
|
|
## 代码片版本[](#versioned-snippets "Permalink")
|
|
|
|
|
|
目前,代码片段(个人代码片和项目代码片)默认都启用了版本控制。
|
|
|
|
|
|
这意味着在创建代码片时,所有代码片都将获得自己的基础存储库(与项目的`wiki`类似),并使用`master`分支进行初始化。 每当保存对代码片的更改时,都会记录对 master 分支的新提交。提交消息是自动生成的,该代码片的存储库默认情况下只有一个分支(master),不支持将其删除或创建其他分支。
|
|
|
|
|
|
### 文件名称[](#file-names "Permalink")
|
|
|
|
|
|
代码片支持基于为其提供的文件名和扩展名突出显示语法,尽管可以在不指定文件名和扩展名的情况下提交代码片,但它需要一个有效的名称,以便可以将内容作为文件创建在代码片的存储库中。
|
|
|
|
|
|
如果用户未将文件名和扩展名归于代码片,我们 会自动以`snippetfile<x>.txt`格式添加文件名,其中`<x>`代表添加到文件的数字,从 1 开始添加了更多没有文件类型的代码片。
|
|
|
|
|
|
> 不支持文件名的代码片将重命名为兼容格式,例如,如果代码片的文件名是`http://a-weird-filename.me` ,它将被更改为`http-a-weird-filename-me` ,以包含在代码片的存储库中。由于代码片是通过 ID 存储的,因此更改其文件名不会破坏该代码片的直接链接或嵌入式链接。
|
|
|
|
|
|
### 克隆代码片[](#cloning-snippets "Permalink")
|
|
|
|
|
|
可以使用 SSH 或 HTTPS 将片段克隆为常规的 Git 存储库,单击代码片内容上方的 **克隆** 按钮,选择克隆的方式即可。
|
|
|
|
|
|
[![Clone Snippet](img/ed5a96971ab453e6d33b3ad9079bd47c.png)](img/snippet_clone_button_v13_0.png)
|
|
|
|
|
|
您可以通过克隆获取代码片存储库的本地副本,并根据需要进行更改, 您也可以提交这些更改并将其推送到远程 master 分支。
|
|
|
|
|
|
### 多文件的代码片
|
|
|
|
|
|
在一个代码片中支持多个文件。当您的代码片由多个部分组成或它们与特定上下文相关时,这将会非常方便。例如:
|
|
|
|
|
|
- 包含脚本及其输出的代码片
|
|
|
- 包含HTML、CSS和JS代码的代码片
|
|
|
- 包含 `docker-compose.yml` 文件及其关联的`.env`文件的代码片
|
|
|
- 包含 `gulpfile.js`文件 和 `package.json`文件的代码片,可以一起用于引导项目并管理其依赖项
|
|
|
|
|
|
代码片支持1到10个文件。它们可以通过Git(因为它们由Git存储库进行版本控制)、Snippets API或 CODE CHINA UI进行管理。
|
|
|
|
|
|
#### 多文件代码片
|
|
|
|
|
|
要通过 CODE CHINA UI向代码片添加新文件,请执行以下操作:
|
|
|
|
|
|
1. 跳转到 CODE CHINA 代码片
|
|
|
1. 单击右上角的“编辑”按钮
|
|
|
1. 选择“添加其他文件”
|
|
|
1. 在提供的表单字段中将内容添加到文件中
|
|
|
1. 单击保存更改
|
|
|
|
|
|
要通过CODE CHINA UI从代码片中删除文件,请执行以下操作:
|
|
|
|
|
|
1. 跳转到 CODE CHINA 代码片
|
|
|
1. 单击右上角的“编辑”按钮
|
|
|
1. 在要删除的每个文件的文件名旁边选择“删除文件”
|
|
|
1. 单击保存更改
|
|
|
|
|
|
### 一些限制[](#limitations "Permalink")
|
|
|
|
|
|
* 不支持二进制文件
|
|
|
* 不支持创建或删除分支, 可使用的只有默认的*master*分支
|
|
|
* 代码片存储库中不支持 Git 标签
|
|
|
* 代码片的存储库仅限于一个文件,尝试推送多个文件将导致错误
|
|
|
* 代码片的最大不允许超过50 MB
|
|
|
* 不支持 LFS
|
|
|
|
|
|
## 评论[](#snippet-comments "Permalink")
|
|
|
|
|
|
您可以参与有关该代码片的讨论,从而促进用户之间的协作。
|
|
|
|
|
|
## 下载代码片[](#downloading-snippets "Permalink")
|
|
|
|
|
|
您可以下载代码片的原始内容。
|
|
|
|
|
|
默认情况下,将下载带有 Linux 样式的行尾( `LF` )的代码片。
|
|
|
|
|
|
如果要保留原始的行尾,则需要添加参数`line_ending=raw` (例如, `https://codechina.csdn.net/snippets/SNIPPET_ID/raw?line_ending=raw` )
|
|
|
|
|
|
## 引用代码片[](#embedded-snippets "Permalink")
|
|
|
|
|
|
公开代码片不仅可以共享,还可以嵌入任何网站中。这样,您可以在多个地方重用代码片,并且对源代码的任何更改都会自动反映在嵌入式代码片中。
|
|
|
|
|
|
如果要引用一个代码片,首先请确保:
|
|
|
|
|
|
* 该项目是公开的(如果是项目代码片的话)
|
|
|
* 代码片是公开的
|
|
|
* 在" **项目">"设置">"权限"中** ,将代码片权限设置为" **具有访问**权限的**所有人"**
|
|
|
|
|
|
满足以上条件后,代码片"嵌入"功能将出现在您的代码片段中,您只需单击"复制"按钮即可。这将复制一个单行脚本,您可以将其添加到任何网站或博客文章中。
|
|
|
|
|
|
示例代码如下所示:
|
|
|
|
|
|
```
|
|
|
<script src="https://codechina.csdn.net/namespace/project/snippets/SNIPPET_ID.js"></script>
|
|
|
```
|
|
|
|
|
|
嵌入式代码片的外观如下:
|
|
|
|
|
|
嵌入的代码片段带有一个标题,该标题显示文件名(如果已定义),代码片段大小,到 CODE CHINA 的链接以及实际的代码片段内容。标头中的操作使用户可以查看原始格式的代码片并下载。 |
|
|
\ No newline at end of file |