从华为云码道开始:在 AtomGit 上创建你的第一个开源仓库

把「开源」和「仓库」这两个词讲清楚,再带你用 atomgit.com/dashboard/ 这个页面,从零建出一个真正能用的仓库。

一键开通华为云码道 CodeArts 代码智能体: Developer Events_Developer Alliance-Huawei Cloud


一、先弄明白:开源与仓库到底是什么

很多人第一次接触开源,卡住的不是技术,而是概念。所以动手之前,先把三个词说透:开源仓库托管平台

1.1 开源:不只是「代码公开」

「开源」两个字很容易被理解成「把代码放到网上让人看」。这只是表象。真正的开源包含三层含义:

层次含义缺失会怎样
授权层用一份许可证(LICENSE)明确授予他人使用、修改、分发的权利代码公开但不可用,别人抄一行都算侵权
协作层提供 Issue、Pull Request 等机制,让陌生人也能参与改进只能「看」,不能「一起做」,项目停在你一个人手上
可持续层有 README、文档、版本发布、贡献指南,别人能自己跑起来项目变成「一次性代码坟场」,无人复用

所以,一份没有 LICENSE 的公开代码,不是开源,只是公开。这是新手最容易踩的坑,后文会专门处理。

1.2 仓库:开源协作的最小单元

仓库(Repository,简称 repo) 是承载一个项目全部内容与历史的容器。它不只装代码,而是同时装下四样东西:

  • 代码文件 —— 项目当前的快照(工作区);

  • 完整历史 —— 每一次提交(commit)及其作者、时间、改动内容;

  • 分支结构 —— 同一份代码的不同并行开发线;

  • 协作空间 —— Issue(问题/需求)、Pull Request(代码合并请求)、Wiki、讨论区。

换句话说:仓库 = 代码 + 历史 + 协作空间。少了任何一块,它都只是个网盘目录。

仓库的解剖结构

一个健康的仓库,根目录大致长这样:

my-project/
├── README.md          # 项目说明书:这是什么、怎么用(最重要)
├── LICENSE            # 许可证:授予他人什么权利
├── .gitignore         # 忽略规则:哪些文件不进版本库
├── CHANGELOG.md       # 变更日志:每个版本改了什么
├── CONTRIBUTING.md    # 贡献指南:别人怎么参与
├── docs/              # 文档目录
├── src/               # 源码目录
└── tests/             # 测试目录

其中前三个是最低配置,缺一个都会显著降低项目的可用性。

分支与提交:版本控制的骨架
  • 提交(commit) 是历史的原子单位,一次提交 = 一组改动的存档点。好的提交信息能让人一眼看懂「为什么改」,而不只是「改了什么」。

  • 分支(branch) 是并行的开发线。默认分支通常叫 main,它是项目的「主干」,一般要求随时可用。

  • 合并请求(Pull Request / PR) 是把一条分支的改动合进主干的正式提案,也是代码评审发生的地方。

新手常犯的错误是:直接往 main 上推。更稳妥的做法是「开分支 → 提交 → 提 PR → 评审 → 合并」,第五章会演示。

1.3 托管平台:仓库放在哪里

仓库可以只存在你自己的电脑上(本地仓库),但开源的意义在于协作,所以需要一个托管平台来存放远程仓库、提供 Web 界面与协作功能。

国外最知名的是 GitHub,国内可选的有 AtomGit、Gitee 等。选平台时通常看三件事:访问速度、生态与社区、以及是否支持你需要的协作能力。


二、AtomGit 与 华为云码道:平台与工具

2.1 AtomGit:新一代 AI 驱动的开源开发者平台

AtomGit 由深圳开源共创科技有限公司运营,定位是「新一代由 AI 驱动的开源开发者平台」。它的几个特点值得知道:

  • 提供国内 GitHub 加速服务,对高星开源项目做镜像同步,解决访问速度问题;

  • 支持多种仓库类型:代码仓之外还有模型仓、数据仓,面向 AI 项目;

  • 完整的协作能力:Issue 模板、CodeOwners、Pull Request 评审、组织看板、组织级自定义权限;

  • 开放 API:遵循 OpenAPI 标准,可以脚本化操作。

注册入口就是官网 atomgit.com,点右上角「注册」,按提示填用户名、手机号与验证码即可。

image-20260917083750456

2.2 华为云码道:跑在你终端里的 AI 编程智能体

华为云码道是面向开发者提供的一站式云端平台,即开即用,随时随地在云端交付软件全生命周期,覆盖需求下发、代码提交、代码检查、代码编译、验证、部署、发布,打通软件交付的完整路径,提供软件研发流程的端到端支持,目前在AtomGit - 全球开发者的开源社区,开源代码托管平台这个页面已经融合。

这篇文章我们会用到一些能力。

工具能力写操作是否需确认
atomgit_repo列出、查看、创建、删除、Fork、Clone 仓库,创建 Tag,管理项目标签
atomgit_pr列出、查看、创建、关闭 PR,管理 PR 评论,关联/取消关联 Issue
atomgit_issue列出、查看、创建 Issue,查看/新增/编辑/删除评论

这张表就是本文实践的底气:因为 atomgit_repo 支持「创建仓库」,我们才有可能在对话里把仓库建出来,而不是只能手动填表单。

另外两个值得一提的能力:

  • WebUI 界面 —— 在 TUI 里输入 /webui,会在本机 127.0.0.1:13457 起一个浏览器界面,同一个 agent、同一份会话渲染在浏览器中,并支持终端与浏览器实时同步(/sync);

  • 代码图谱工具 —— list_symbolsfind_referencestrace_callersblast_radius 等,让模型不必读遍整棵树就能精准定位符号与调用关系。

2.3 为什么可以「在页面上建仓库」

把上面两点连起来看:

AtomGit 平台  ──提供──▶  仓库托管 + 开放 API
                              ▲
                              │ 调用
AtomCode      ──内置──▶  atomgit_repo 工具
                              ▲
                              │ 自然语言驱动
你            ──打开──▶  atomgit.com/dashboard/atomcode

你在页面上说一句「帮我建一个公开仓库」,AtomCode 把它翻译成对 AtomGit API 的调用,仓库就建好了。你不需要记 API、不需要敲 curl、也不需要点十几次表单。


三、认识 atomgit.com/dashboard/这个页面

AtomGit - 全球开发者的开源社区,开源代码托管平台 是 AtomGit 为 开发者提供的方便操作AtomGit协作工作台页面。它把「AI 编程智能体」从终端搬进了浏览器,但保留了两件关键的事:上下文审批

3.1 页面上的几个关键区域

进入页面后,你主要和这几块打交道:

区域作用
执行者选择选择由哪个 agent 来执行任务(如 华为云码道 Agent)。一个对话用同一个执行者,便于延续上下文。
仓库选择关联目标仓库与引用分支。关联后 agent 才能读取项目上下文、改文件、跑命令、做 Git 操作。
对话输入区用自然语言描述任务,支持粘贴图片、上传文件作为上下文、插入 Skills。
工具执行展示区实时展示每一步工具调用的参数与输出,可逐行展开。执行过程透明可见。
审批模式控制 agent 的操作门控(默认 Build:改文件、跑命令前请求审批)。

3.2 三种审批模式

这是新手最该先理解的一点 —— 它决定了「agent 能自己走多远」:

模式行为适用场景
Build(默认)每次改文件、跑命令前都请求审批首次上手、涉及重要仓库时
Accept Edits文件改动自动批准,命令仍需审批改动频繁但你仍想盯着命令
Plan只读探索,写入与执行类工具被拦下先让 agent 出方案,你确认后再动手

另有一个 Bypass(免审批) 模式会自动批准一切,含改文件与跑命令 —— 请谨慎使用,尤其在真实项目的 main 分支上。

提示:审批模式是进程级的,会在连接的视图之间同步,但不写入配置文件,重启后回到 Build。

3.3 首次授权

首次使用可能提示需要授权。按界面指引完成授权后,agent 才能在该对话中调用工具、访问你选中的仓库。授权遵循最小权限原则,涉及访问令牌时不要在任何公开内容里暴露凭据。


四、实践:用 AtomGit - 全球开发者的开源社区,开源代码托管平台页面创建一个仓库

下面是一次完整的建仓流程。建议第一次用一个测试仓库或直接建一个新仓库来演示,别拿正在用的项目练手。

4.1 第一步:确认前置条件

动手前,先确认三件事:

✅ 已注册并登录 AtomGit 账号
✅ 本机已安装 git(git --version 能正常输出)
✅ 已进入 https://atomgit.com/dashboard/atomcode 页面

如果你还没注册,先到 atomgit.com 点右上角「注册」完成注册与登录。

4.2 第二步:选择执行者

在对话输入区的执行者选择入口里,选中 华为云码道

一个对话只用一个执行者。建议在同一条任务链里保持不变,这样可以连续复用当前会话的上下文,不用反复交代背景。

image-20260917081237953

4.3 第三步:理解「关联仓库」这件事

这里有个关键区别,也是很多人第一次会困惑的地方:

建一个全新仓库时,并不需要先关联仓库 —— 关联的对象是「已存在的仓库」。

一旦新仓库创建成功,再回来关联它,后续的读代码、改文件、提交、提 PR 才有上下文可用。

所以正确的顺序是:

先让 agent 创建仓库  →  再关联这个新仓库  →  然后开始第一个开发任务

4.4 第四步:下达建仓指令

在建仓之前,先把要素想清楚。仓库的配置项其实就四个:

配置项说明建议
仓库名称项目的标识名短、语义清晰,用连字符分隔单词
所有者 / 路径归属个人还是组织个人项目选自己,团队项目选组织
可见性公开(开源)或私有开源就选公开,实验代码先选私有
初始化是否生成 README、.gitignore、LICENSE强烈建议全部勾上

然后,在对话输入区发送这样一段话(要素齐全,agent 就不用来回追问):

帮我在我的个人账号下创建一个代码仓库,主要是用实现uniapp写一个新闻应用。

image-20260917081325138

4.5 第五步:跟踪执行过程

发送后,你会看到 agent 在页面上实时展示它的执行步骤。典型过程如下:

› 正在调用 atomgit_repo 创建仓库
  ├─ 仓库名称: atomgit-first-repo
  ├─ 所有者:   <你的用户名>
  ├─ 可见性:   public
  └─ 初始化:   README.md / LICENSE / main
​
⚠ 写操作需要确认 —— 是否创建该仓库?  [确认 / 取消]
​
✓ 仓库创建成功
https://atomgit.com/xiaohong-stm32/news-app-uniapp
  默认分支: main

因为 atomgit_repo写操作需要确认,你会在页面上看到一张审批卡片。确认后仓库才真正建立 —— 这正是审批模式在起作用。

4.6 第十步:在 AtomGit 上验证

image-20260917084105863

image-20260917083257662

到这里,你已经完整跑通了「建仓 → 提交 → 验证」这条链路。

本地测试ok

image-20260917084546625

华为云码道和AtomGit的配合确实不错。

五、对照:传统表单建仓方式

对话式建仓很方便,但你也该知道「另一条路」长什么样 —— 有时你只是想要一个空仓库,点几下更快。

5.1 表单建仓的步骤

  1. 登录 AtomGit,点击页面右上角「新建」,选择「新建项目」

  2. 填写配置:项目名称、所有者、项目路径、项目介绍,选择项目可见性;

  3. 勾选「添加初始化 README 文件」(建议),默认分支保持 main

  4. 点击「创建项目」,进入仓库页面 —— 能看到默认分支和初始化文件,即表示建仓完成。

5.2 两种方式对比

维度华为云码道 页面(对话式)传统表单
入口dashboard/ 对话输入区右上角「新建」→「新建项目」
操作粒度一句话描述全部要素逐个字段填写
可否批量可以一次建多个、批量改描述/标签一次一个
后续衔接建完直接在同一对话里开发、提 PR需另找工具或页面继续
可见性描述里写明 公开/私有选单选按钮
适合谁想连着把「建仓 + 开发 」一次做完只想快速建个空仓库

5.3 该选哪个?

  • 只想快速建个空仓库 → 用表单,十几秒的事;

  • 想一次跑通「建仓 → 写代码 → 提 PR」全链路 → 用 AtomCode 页面,省去来回切换;

  • 要建多个仓库 / 批量配置 → 用 AtomCode 页面,一句一句描述,效率明显更高。

两者不冲突。先用表单建仓库、再用 AtomCode 页面开发也很常见 —— 别忘了,AtomCode 页面能直接关联已有仓库。


六、建仓之后:让它像一个正经的开源项目

仓库建好只是开始。回到第一章说的「授权层、协作层、可持续层」,下面这几件事决定了你的仓库是「能用」还是「像个玩具」。

6.1 补上 LICENSE(最容易被忽略的一步)

没有 LICENSE 的公开仓库,不是开源。 补一份许可证,是让代码真正可被使用的第一步。

常见许可证的选择:

许可证特点适合场景
MIT最宽松,几乎不限制工具库、示例项目、希望被广泛使用
Apache-2.0宽松,且附带专利授权条款企业友好,商业使用更放心
GPL-3.0强传染性:衍生作品也须开源希望改进必须回馈社区
BSD-3-Clause宽松,额外禁止用作者名背书与 MIT 类似,条款略有差别

不确定选哪个?MIT 是绝大多数项目的安全默认值。

6.2 完善 README

README 是仓库的门面。一份合格的 README 至少回答四个问题:

# 项目名称
​
一句话:这是什么,解决什么问题。
​
## 特性
- 关键能力 1
- 关键能力 2
​
## 快速开始
安装与运行的最小步骤(能直接复制粘贴)
​
## 主要文件说明
- src/     源码
- tests/   测试
​
## 许可证
MIT

6.3 配置 .gitignore

别把编译产物、依赖目录、本地配置和密钥提交进仓库。根据你的技术栈生成对应的 .gitignore

# 依赖
node_modules/
target/
​
# 构建产物
dist/
build/
*.o
​
# 编辑器与系统
.vscode/
.idea/
.DS_Store
​
# 环境与密钥(务必忽略!)
.env
*.pem

⚠️ .env、密钥、token 一旦提交就很难彻底清除(历史里仍在)。建仓第一件事就该配好忽略规则。

6.4 用 Issue 与 PR 驱动协作

仓库建好后,把协作机制也用起来:

  • 用 Issue 记录待办 —— 想做的功能、发现的 Bug,先开 Issue,让工作可见;

  • 用 PR 做代码评审 —— 即便只有你一个人,走 PR 流程也能留下清晰的决策记录;

  • 用标签分类 —— 给 Issue 打上 bug / enhancement / documentation 等标签;

  • 写 CONTRIBUTING.md —— 告诉别人怎么跑测试、怎么提 PR,降低参与门槛。

6.5 一个小检查清单

✅ README.md      说清是什么、怎么用
✅ LICENSE        明确授权
✅ .gitignore     挡住不该提交的文件
✅ 默认分支       保持可用(不要在 main 上试验)
✅ Issue/PR       有在用,而不只是摆设
✅ 提交信息       用英文写清「为什么改」

七、常见问题

7.1 建仓时提示 401 / 403 / 422 怎么办?

错误码含义处理方式
401认证失败重新登录 AtomGit ,确认凭据有效
403权限不足检查账号对该所有者(组织)是否有建仓权限
422仓库已存在换个仓库名称,或直接关联已有仓库

7.2 agent 读不到仓库内容?

先确认当前对话已选对仓库和分支,再检查账号对该仓库的访问权限。若页面提示需要授权,完成授权后重新执行任务。

7.3 agent 改了代码,但没创建 PR?

可以继续明确要求它走完「创建分支 → commit → push → 创建 PR」,并要求返回 PR 地址与状态。如果缺权限,让它明确告诉你要什么授权。

7.4 PR 创建后要不要立刻合并?

首次演示不建议。 先在 AtomGit 上查看文件变更、提交记录和 PR 描述,确认无误后再按项目规范评审合并。

7.5 私有仓库和公开仓库怎么选?

  • 学习、实验、未完成的代码 → 私有,避免半成品被引用;

  • 打算长期维护、希望被使用 → 公开,并务必配好 LICENSE

  • 随时可以改 —— 可见性后续在仓库设置里能调整。

八、结语

回到最初的问题:开源和仓库到底是什么?

  • 开源不是「代码公开」,而是用 LICENSE 授权 + Issue/PR 协作 + 文档与发布,把一份代码变成别人能真正用起来、参与进来的公共资产;

  • 仓库不是「网盘目录」,而是 代码 + 历史 + 协作空间 的合体,是开源协作的最小单元;

  • 托管平台提供这一切的落脚之处 —— 而 AtomGit 的特别之处在于,它把 AI 智能体 也做成了平台的原生能力。

这也正是 atomgit.com/dashboard/ 这个页面的意义:过去「建仓 → 写代码 → 提交 → 提 PR」要在网页、编辑器、终端之间来回切换;现在你在一个对话里把它说完就行。

当然,工具再顺手,也替代不了那几件「笨功夫」:写一份像样的 README、补一份 LICENSE、配好 .gitignore、不在 main 上乱来。这些才是让一个仓库值得被别人 Star 的理由。

现在,去建你的第一个仓库吧 🚀


参考链接

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐