修改 #2

Merged
gzcx417 merged 1 commits from wzy_branch into master 2025-06-01 22:58:43 +08:00
14 changed files with 626 additions and 7 deletions

View File

@ -0,0 +1,85 @@
# CI/CD配置文件校验指南
## 配置文件格式
GitLink使用`.gitlink-ci.yml`作为CI/CD配置文件提交时会自动进行语法校验。
## 校验规则
1. **基本语法检查**
- YAML格式必须正确
- 缩进必须使用2个空格
- 不允许使用tab字符
2. **必需字段验证**
```yaml
version: 1.0 # 必填,指定配置文件版本
stages: # 必填,定义流水线阶段
jobs: # 必填,定义具体任务
```
3. **字段类型验证**
- `version`: 字符串
- `stages`: 数组
- `jobs`: 对象
- `script`: 字符串数组
4. **环境变量格式**
- 变量名只能包含字母、数字和下划线
- 变量名必须以字母开头
## 错误提示说明
当配置文件存在问题时,系统会在以下位置显示错误信息:
1. 提交时的即时反馈
2. CI/CD页面的构建日志
3. 合并请求的状态检查
## 常见错误及解决方案
1. **缩进错误**
```yaml
# 错误示例
jobs:
build: # 应该缩进2个空格
script:
- echo "Hello"
```
2. **未定义必需字段**
```yaml
# 正确示例
version: 1.0
stages:
- build
jobs:
build:
script:
- echo "Hello"
```
3. **环境变量格式错误**
```yaml
# 错误示例
variables:
1_invalid: "value" # 变量名不能以数字开头
```
## 配置文件模板
```yaml
version: 1.0
stages:
- build
- test
- deploy
variables:
MAVEN_OPTS: "-Dmaven.repo.local=.m2/repository"
jobs:
build:
stage: build
script:
- mvn compile
test:
stage: test
script:
- mvn test
```

View File

@ -9,4 +9,10 @@ sidebar_position: 5
编辑流水线代码,其流水线名称描述、触发器、全局参数、执行串行/并发和流水线编排等概念同图形流水线,具体描述如下:
![code_workflow2](../../static/img/engine/code_workflow2.png)
![code_workflow2](../../static/img/engine/code_workflow2.png)
# YAML校验规则
提交.gitlink-ci.yml时会自动校验以下内容
- 必须包含version字段
- 节点名称不能重复
- 每个任务必须指定runner类型

View File

@ -10,4 +10,10 @@ sidebar_position: 1
![engine_intro](../../static/img/engine/engine_intro.jpg)
在引擎页面中,用户可以创建和编辑图形流水线或代码流水线、设置外部参数、管理密钥等操作。
在引擎页面中,用户可以创建和编辑图形流水线或代码流水线、设置外部参数、管理密钥等操作。
# 配置文件校验
提交.gitlink-ci.yml文件时会自动进行语法校验系统会提示以下常见错误
- 无效的stage名称
- 缺少必填字段
- 语法格式错误

View File

@ -0,0 +1,79 @@
# GitLink版本功能对比
## 版本类型
### 社区版
- 完全免费
- 开源项目托管
- 基础代码托管功能
- 基础CI/CD功能
- 公共仓库无限制
### 企业版
- 收费服务
- 私有部署
- 高级功能支持
- 专属技术支持
- 自定义域名
## 功能对比表
| 功能 | 社区版 | 企业版 |
|------|--------|--------|
| 代码托管 | ✓ | ✓ |
| Issue管理 | ✓ | ✓ |
| Pull Request | ✓ | ✓ |
| WebHook | ✓ | ✓ |
| 基础CI/CD | ✓ | ✓ |
| Wiki | ✓ | ✓ |
| 公共仓库 | 无限制 | 无限制 |
| 私有仓库 | 限制数量 | 无限制 |
| 存储空间 | 1.2GB/仓库 | 可定制 |
| 团队成员 | 限制人数 | 无限制 |
| 审计日志 | ✗ | ✓ |
| LDAP集成 | ✗ | ✓ |
| SSO登录 | ✗ | ✓ |
| 高级CI/CD | ✗ | ✓ |
| 定制化服务 | ✗ | ✓ |
| 专属支持 | ✗ | ✓ |
## 企业版专属功能
### 安全与合规
- 审计日志
- 合规检查
- 安全扫描
- 漏洞分析
### 身份认证
- LDAP/AD集成
- SSO登录
- 双因素认证
- 访问控制
### 高级DevOps
- 自定义CI/CD
- 容器镜像仓库
- 制品库
- 环境管理
### 团队协作
- 项目组合管理
- 高级权限控制
- 工作流自动化
- 团队数据分析
## 升级建议
1. 适合升级企业版的场景:
- 需要私有部署
- 要求更高安全性
- 需要专业技术支持
- 团队规模较大
- 需要高级功能
2. 适合使用社区版的场景:
- 个人开发者
- 小型团队
- 开源项目
- 基础代码托管需求
- 预算有限

View File

@ -35,7 +35,7 @@ sidebar_position: 9
### **8. WebSCM**
可以在极速版新建分支,修改代码后在 SCM 面板看到变更文件列表,写完 commit message 后提交到 Gitlink 上。如果想快速修改一些文件可以不用在本地修改,直接通过极速版修改代码一次性提交。
### **9. 代码在线运行**
● 集成了基于 skypack 的更加轻量的 CodeSwing 插件,可以在极速版去运行前端代码
● 集成了基于 Pyodide 的 Code-Runner-For-Web 插件,可以将 Python 的运行搬到浏览器上。
![](../../static/img/代码库管理/WebIDE/WebIDE代码在线运行.png)<br/>
### **9. 快速访问方式**
在仓库文件列表页面,点击任意文件右侧的"编辑"按钮即可直接进入WebIDE界面
![](../../static/img/代码库管理/WebIDE/快速访问入口.png)

View File

@ -0,0 +1,58 @@
# 仓库设置指南
## 强制推送Force Push设置
要启用强制推送功能,需要同时满足以下条件:
1. **用户权限要求**
- 必须是仓库管理员
- 或具有特定分支的写入权限
2. **仓库设置要求**
- 进入仓库设置页面
- 找到"分支保护"设置
- 开启`allow_force_push`选项
### 配置步骤
1. 进入仓库设置
2. 选择"分支管理"
3. 找到目标分支
4. 开启"允许强制推送"选项
5. 保存设置
### 注意事项
- 强制推送可能会覆盖其他人的提交
- 建议在个人分支上使用
- 不推荐在主分支上启用
- 操作前先备份代码
## 仓库基本设置
### 仓库信息
- 仓库名称
- 仓库描述
- 可见性设置
- 默认分支
### 访问控制
- 协作者管理
- 团队权限
- 分支保护规则
- SSH密钥管理
### 功能开关
- Issues功能
- Wiki功能
- Projects功能
- Pages服务
## 存储限制
- 免费账户1.2GB
- 单文件上限100MB
- LFS支持可选开启
## 高级功能
- 仓库迁移
- 仓库归档
- 仓库模板
- WebHook配置
- 部署密钥

View File

@ -0,0 +1,70 @@
# 仓库模板使用指南
## 访问模板仓库
有两种方式可以访问模板仓库:
1. **通过URL参数**
- 在仓库URL后添加`?template=true`
- 例如:`https://gitlink.org/org/repo?template=true`
2. **通过界面入口**
- 点击"新建仓库"按钮
- 选择"从模板创建"选项
## 创建模板仓库
### 将仓库设置为模板
1. 进入仓库设置
2. 找到"仓库类型"选项
3. 勾选"将此仓库设置为模板"
4. 保存设置
### 模板仓库特性
- 不能被直接推送代码
- 可以被任何人用作模板
- 保持干净的提交历史
- 支持自定义初始化配置
## 使用模板创建仓库
### 基本步骤
1. 访问模板仓库
2. 点击"使用此模板"按钮
3. 填写新仓库信息
4. 选择要包含的分支
5. 确认创建
### 自定义选项
- 选择性复制分支
- 包含所有标签
- 复制Issue模板
- 保留提交历史
## 最佳实践
### 模板仓库结构
```
template-repo/
├── .gitlink/
│ ├── ISSUE_TEMPLATE/
│ └── PR_TEMPLATE/
├── docs/
│ └── README.md
├── src/
├── tests/
├── .gitignore
└── README.md
```
### 推荐配置
1. 添加详细的README
2. 包含必要的配置文件
3. 提供示例代码
4. 设置Issue和PR模板
5. 配置CI/CD模板
## 注意事项
1. 模板仓库应保持最小化
2. 定期更新模板内容
3. 提供清晰的使用文档
4. 避免包含敏感信息

View File

@ -16,4 +16,8 @@ sidebar_position: 4
### **4. 编辑文件**
编辑界面右侧有三个按钮,分别是“下载”、“编辑”和“删除”,点击下载即可将文件下载到本地,编辑则可在线编辑文档,删除则将文件从代码库中删除,按钮位置如下图所示。
![](../../static/img/代码库管理/文件管理/文件编辑按钮.png)<br/>
![](../../static/img/代码库管理/文件管理/文件编辑按钮.png)<br/>
### **5. WebIDE在线编辑**
点击文件右侧的"编辑"按钮可直接进入WebIDE界面
![](../../static/img/代码库管理/webide_entry.png)

View File

@ -0,0 +1,64 @@
# 合并请求使用指南
## 创建合并请求
### 基本步骤
1. 进入源分支
2. 点击"新建合并请求"
3. 选择目标分支
4. 填写标题和描述
5. 提交合并请求
## 审查合并请求
### 代码审查
1. 查看变更文件
2. 添加行内评论
3. 提交整体评审意见
4. 设置审查状态
### 合并操作
1. 确保所有检查通过
2. 滚动到评论框下方
3. 找到"合并"按钮(位于评论区下方)
4. 选择合并方式
- 普通合并
- 压缩合并
- 变基合并
## 合并选项说明
### 普通合并
- 保留完整提交历史
- 创建合并提交
- 适合功能分支合并
### 压缩合并
- 将所有提交压缩为一个
- 保持主分支历史整洁
- 适合bug修复合并
### 变基合并
- 重放所有提交
- 形成线性历史
- 适合长期维护分支
## 最佳实践
### 提交合并请求前
1. 确保本地测试通过
2. 更新分支到最新
3. 解决冲突
4. 编写清晰的描述
### 审查要点
1. 代码质量
2. 测试覆盖
3. 文档更新
4. 性能影响
### 合并后操作
1. 删除源分支
2. 更新相关Issue状态
3. 部署新版本(如需要)
4. 通知相关人员

View File

@ -0,0 +1,38 @@
# 账户管理指南
## 登录方式
GitLink提供多种便捷的登录方式
### 1. 账号密码登录
- 使用注册邮箱/用户名 + 密码登录
- 支持记住登录状态
### 2. 移动端扫码登录
1. 在网页端登录界面点击"扫码登录"
2. 打开GitLink移动端APP
3. 点击APP右上角的扫码图标
4. 扫描网页上显示的二维码
5. 在手机上确认登录
### 3. 第三方账号登录
- GitHub账号登录
- GitLab账号登录
- 微信登录
## 账户安全
1. **二次验证**
- 支持Google Authenticator
- 支持手机验证码
2. **登录历史**
- 查看最近的登录记录
- 显示登录IP和设备信息
3. **访问令牌**
- 创建个人访问令牌
- 管理令牌权限和有效期
## 账户限制
- 免费账户仓库存储限制1.2GB
- 单个文件大小限制100MB
- API调用频率限制每小时1000次

View File

@ -0,0 +1,41 @@
# 快捷键指南
## 全局快捷键
- `shift + ?`: 显示快捷键帮助面板
- `t`: 打开文件快速搜索
- `s`: 聚焦搜索框
- `g + c`: 跳转到代码页面
- `g + i`: 跳转到Issues页面
- `g + p`: 跳转到Pull Requests页面
## 代码浏览
- `/`: 在当前仓库中搜索
- `l`: 跳转到指定行
- `b`: 查看文件历史
- `y`: 复制永久链接
- `i`: 显示/隐藏差异
## 代码编辑
- `ctrl + s`: 保存更改
- `ctrl + f`: 查找
- `ctrl + g`: 跳转到行
- `ctrl + /`: 注释/取消注释
- `ctrl + space`: 触发代码补全
## Issue和PR
- `ctrl + enter`: 提交评论
- `r`: 回复
- `n`: 创建新Issue
- `m`: 设置里程碑
- `l`: 添加标签
## 导航
- `h`: 返回首页
- `g + n`: 查看通知
- `g + d`: 跳转到仪表盘
- `g + s`: 跳转到设置
## 提示
1. 在任何页面按下`shift + ?`可以查看当前页面支持的所有快捷键
2. 部分快捷键在特定页面才能使用
3. 快捷键可能会随平台更新而变化,请以帮助面板显示为准

View File

@ -0,0 +1,29 @@
# WebIDE使用指南
## 概述
GitLink提供了强大的在线WebIDE功能让您无需在本地安装开发环境即可直接在浏览器中编辑和运行代码。
## 如何访问WebIDE
1. 进入任意代码仓库
2. 在文件列表界面,点击文件右侧的"编辑"按钮
3. 系统将自动打开Cloud IDE界面
## 主要功能
- 在线编辑代码
- 实时语法高亮
- 代码自动补全
- 集成终端
- 实时预览
- 一键提交变更
## 快捷键支持
WebIDE支持多种快捷键操作以提升开发效率
- `Ctrl + S`: 保存文件
- `Ctrl + F`: 在当前文件中搜索
- `Ctrl + Shift + F`: 在项目中搜索
- `F5`: 运行/调试
## 注意事项
1. 首次打开WebIDE可能需要等待几秒钟进行环境初始化
2. 建议使用Chrome或Firefox等现代浏览器以获得最佳体验
3. 编辑完成后请及时提交更改

View File

@ -0,0 +1,55 @@
# Issue 管理指南
## Issue自动关闭
GitLink支持通过提交信息自动关闭Issue。在提交信息中使用特定关键字可以自动关闭相关Issue。
### 支持的关键字
- `fix #123`
- `fixes #123`
- `fixed #123`
- `close #123`
- `closes #123`
- `closed #123`
- `resolve #123`
- `resolves #123`
- `resolved #123`
### 使用示例
```
git commit -m "fix #123: 修复了登录按钮无响应的问题"
```
### 多Issue关闭
可以在一条提交信息中关闭多个Issue
```
git commit -m "fix #123, closes #456: 重构登录模块"
```
### 跨仓库关闭
可以通过指定完整路径关闭其他仓库的Issue
```
git commit -m "fix organization/repo#123: 修复依赖问题"
```
## 手动关闭Issue
1. 打开需要关闭的Issue
2. 点击右侧状态下拉菜单
3. 选择"关闭Issue"
4. 可选:添加关闭原因说明
## Issue标签管理
- 使用合适的标签分类Issue
- 可自定义标签颜色和描述
- 支持批量编辑标签
## Issue模板
1. 在仓库`.gitlink`目录下创建`ISSUE_TEMPLATE`文件夹
2. 添加模板文件支持markdown格式
3. 新建Issue时可选择使用模板
## 最佳实践
1. 使用清晰的标题描述问题
2. 提供完整的复现步骤
3. 附上相关的错误日志或截图
4. 及时更新Issue状态
5. 使用自动关闭语法关联提交和Issue

View File

@ -0,0 +1,84 @@
# API使用指南
## API响应格式
所有API响应都遵循以下统一格式
```json
{
"code": 200, // 状态码
"request_id": "xxx", // 请求唯一标识
"data": { // 响应数据
// 具体的业务数据
}
}
```
### 状态码说明
- 200: 请求成功
- 400: 请求参数错误
- 401: 未授权
- 403: 禁止访问
- 404: 资源不存在
- 500: 服务器内部错误
### 重要说明
1. `request_id`字段在每个响应中都会返回,用于问题追踪
2. v2版本API已废弃请使用v3版本
3. 所有API调用都需要在Header中携带认证信息
## API版本说明
- v3: 当前稳定版本(推荐使用)
- v2: 已废弃返回410 Gone
- v1: 已移除
## 仓库相关API
### 获取仓库信息
```http
GET /api/v3/repos/{owner}/{repo}
```
响应示例:
```json
{
"code": 200,
"request_id": "f58c7dd4-9876-4321-abcd-ef1234567890",
"data": {
"id": 12345,
"name": "example-repo",
"owner": {
"id": 67890,
"login": "example-user"
}
}
}
```
### 创建仓库
```http
POST /api/v3/repos
```
请求体示例:
```json
{
"name": "new-repo",
"description": "A new repository",
"private": false
}
```
## WebHook事件类型
支持的事件类型包括:
1. `push`: 推送代码时触发
2. `pull_request`: PR相关操作触发
3. `issue`: Issue相关操作触发
4. `release`: 发布版本时触发
5. `star`: 加星操作触发
6. `fork`: 仓库被fork时触发
7. `comment`: 评论相关操作触发
8. `repo_analytics`: 仓库统计数据更新时触发
9. `wiki`: Wiki页面更新时触发
10. `member`: 成员变更时触发
11. `deploy`: 部署事件触发