---
url: /zh/guide/first-repo.md
---
组织是团队管理成员和资源的命名空间，在创建仓库资源前，需创建组织以管理成员及仓库等资源。
仓库可以用于托管企业的代码资产，管理云原生构建流水线配置。

## 1. 创建组织

单击右上角的 `＋`，选择`创建组织`，填写组织名称及相关描述后，单击`创建`即可完成组织创建。

![创建组织](/images/quick-start/create-group.zh.png)

## 2. 创建仓库

单击右上角的 `＋`，选择`创建仓库`，选择仓库的归属组织、填写仓库名称，并按需选择仓库的公开性后，单击`创建`即可完成仓库创建。

![创建仓库](/images/quick-start/create-repo.zh.png)

## 3. 初始化仓库

您可以选择以下任一方式完成仓库的初始化。

### 3.1 云端快速初始化（推荐）

直接在云原生开发环境中操作，无需本地配置 Git：

* **迁移已有仓库**：在云原生开发环境的欢迎页面里，直接粘贴旧仓库地址，一键完成迁移
* **新建文件**：直接在网页上创建 README 等文件

![云端快速初始化](/images/quick-start/workspace.zh.png)

### 3.2 本地已有项目推送到 CNB

如果你本地已经有一个项目目录，想推送到 CNB 仓库：

```bash
# 1. 进入本地项目目录
cd my-project

# 2. 初始化 Git（如果还没有）
git init

# 3. 添加 CNB 仓库为远程地址
git remote add origin https://cnb.share.ralphlauren.cn/org/repo-name.git

# 4. 添加所有文件并提交
git add .
git commit -m "Initial commit"

# 5. 推送到 CNB（首次推送需要 -u 参数）
git push -u origin main
```

::: tip 提示
如果本地默认分支是 `master` 而不是 `main`，可以用 `git branch -M main` 重命名分支，或在推送时指定分支名。
:::

### 3.3 从其他平台迁移仓库

#### 完整迁移（保留所有历史）

```bash
# 1. 克隆裸仓库
git clone --bare https://github.com/old-repo.git

# 2. 推送到 CNB（--mirror 会同步所有分支和标签）
cd old-repo.git
git push --mirror https://cnb.share.ralphlauren.cn/org/new-repo.git

# 3. 清理临时文件
cd .. && rm -rf old-repo.git
```

#### 仅迁移指定分支

```bash
# 1. 克隆源仓库
git clone https://github.com/old-repo.git
cd old-repo

# 2. 添加 CNB 为远程仓库
git remote add cnb https://cnb.share.ralphlauren.cn/org/new-repo.git

# 3. 推送需要的分支
git push cnb main
git push cnb develop

# 4. 推送标签
git push cnb --tags
```

### 3.4 克隆空仓库后提交

```bash
# 1. 克隆 CNB 上的空仓库
git clone https://cnb.share.ralphlauren.cn/org/new-repo.git
cd new-repo

# 2. 创建文件
echo "# My Project" > README.md

# 3. 提交并推送
git add README.md
git commit -m "Initial commit"
git push -u origin main
```
