|
|
## 关于 mirrors 镜像仓库的设置说明
|
|
|
|
|
|
mirror 镜像仓库用于同步 github 上的开源项目,以解决国内用户访问 github 速度较慢的问题,在 clone 项目方面,相较于 github 正常的访问速度 20 kb/s ,从 [CODEChina Mirrors 镜像仓库](https://codechina.csdn.net/mirrors) clone 项目可以达到 1MB/s,将近有 50 倍左右的提升。
|
|
|
|
|
|
镜像仓库中的项目目前同步频率约为 1次/小时,已经镜像的项目列表参考 Mirros 项目 [Readme](xxxx/readme.md) 文件。
|
|
|
|
|
|
## 如何添加新的镜像仓库
|
|
|
|
|
|
如果您有新的仓库需要从 github 镜像到 CODEChina 上,您只需要在 [镜像设置]() 仓库中 fork 一份项目并创建一个您自己的分支,同时按照如下格式创建好相应的文件并向源项目提交合并请求即可,在我们 Review 完您的代码,并接受您的合并请求之后,系统将会自动开始导入并同步您所提交的仓库。
|
|
|
|
|
|
```mermaid
|
|
|
|
|
|
```
|
|
|
|
|
|
### 同步项目配置
|
|
|
|
|
|
如果您需要新增一个/多个 项目的 mirror,您需要创建一个 `imports.yml` 的配置文件,推送到 [镜像设置]() 仓库中并提交合并请求即可,以下是 `imports.yml` 配置文件的模板内容,请参考以下格式来创建配置文件。
|
|
|
|
|
|
```yaml
|
|
|
group:
|
|
|
name: alibaba
|
|
|
descripition: ''
|
|
|
projects:
|
|
|
- name: p3c
|
|
|
description: ''
|
|
|
mirrorRelease: false
|
|
|
topic: ''
|
|
|
- name: arthas
|
|
|
description: ''
|
|
|
mirrorRelease: false
|
|
|
topic: agent,alibaba,arthas,classloader,diagnosis,java,jvm,trace,trouble-shooting
|
|
|
- name: fastjson
|
|
|
description: ''
|
|
|
mirrorRelease: false
|
|
|
topic: android,best-performance,deserialization,fastjson,java,json,json-parser,json-serialization,json-serializer,serialization
|
|
|
```
|
|
|
|
|
|
其中:
|
|
|
#### Group 设置
|
|
|
- `group` 是指需要 mirror 项目在 github 项目中的 `namespace` (支持组织或个人的项目),例如:
|
|
|
`arthas` 项目的 github 项目地址为 `https://github.com/alibaba/arthas` ,则其 `group:name` 就设置为 `alibaba`;同样的,对于个人的项目 `https://github.com/xiongjiamu/arthas`,则 `group:name` 就设置为 `xiongjiamu` 即可;
|
|
|
- `description` 是指 组织/个人 的简介,可以为空,填写后会被作为 `mirrors` 下对应子组织的组织简介;
|
|
|
|
|
|
> 注:一个 `imports.yml` 配置文件中只支持配置一个 `group` ,如果需要同步 mirror 的项目属于多个组/用户,则请创建并提交多个配置文件
|
|
|
|
|
|
#### Project 设置
|
|
|
与 `group`设置不同,在 `imports.yml` 配置文件中,支持添加多个项目文件的配置。
|
|
|
- `project name`是指需要 mirror 项目在 github 地址中 `namespace` 后跟随的完整内容,不可为空,例如:
|
|
|
`arthas` 项目的 github 项目地址为 `https://github.com/alibaba/arthas` ,则其 `project:name` 就设置为 `alibaba`;同样的,对于个人的项目 `https://github.com/xiongjiamu/arthas-2`,则 `group:name` 就设置为 `arthas-2` 即可;
|
|
|
- `description` 是指项目的简介,可以为空,填写后会被作为同步后项目的项目简介;
|
|
|
- `mirrorRelease` 是指是否需要同步 mirror 项目的 Release 附件,默认为 false(目前该功能还在开发中……)
|
|
|
- `topic` 是指项目的话题,可以为空,如果是多个则请用英文逗号 `,` 分割开,填写后会被作为同步后项目的 Topic 信息显示在项目主页中;
|
|
|
|
|
|
|
|
|
|