【quantity】1 创建 crates.io 账号并上传 Rust 库

第一部分:创建 crates.io 账号

  1. 获取 GitHub 账号
    crates.io 使用 GitHub 账号进行认证,因此你需要:
  • 拥有一个 GitHub 账号(如果没有,请先注册)

  • 确保你的 GitHub 账号邮箱已验证

  1. 登录 crates.io
  • 访问 crates.io

  • 点击右上角的 "Log in with GitHub"

  • 授权 crates.io 访问你的 GitHub 账号

  1. 获取 API Token
  • 登录后,点击右上角你的用户名

  • 选择 "Account Settings"

  • 在 "API Access" 部分,点击 "New Token"

  • 为 token 命名(如 "my-laptop")

  • 点击 "Create" 生成 token

  • 复制这个 token(它只会显示一次,请妥善保存)

  1. 在本地配置 API Token
    在你的开发机器上运行:
bash 复制代码
cargo login

然后粘贴你复制的 token 并按回车。

第二部分:准备要发布的库

  1. 创建或检查你的 Cargo.toml
    确保你的 Cargo.toml 文件包含所有必要信息:
toml 复制代码
[package]
name = "your-library-name"  # 必须是唯一的,全crates.io范围内
version = "0.1.0"          # 遵循语义化版本控制
authors = ["Your Name <[email protected]>"]
description = "A short description of your library"
license = "MIT OR Apache-2.0"  # 必须使用SPDX标识符
repository = "https://github.com/yourusername/your-repo"
documentation = "https://docs.rs/your-library-name"
keywords = ["keyword1", "keyword2", "keyword3"]  # 最多5个
categories = ["category-from-list"]  # 可选,从现有分类中选择

[dependencies]
# 你的依赖项
  1. 添加文档和元数据
  • 确保你的库有良好的文档:

    • 在主要项目文件顶部添加文档注释:
rust 复制代码
//! 这里是库级别的文档

/// 这里是函数文档
pub fn example() {}
  • 添加 README.md 文件

  • 添加 LICENSE 文件

  1. 验证你的包
    运行以下命令检查是否可以打包:
bash 复制代码
cargo package

检查是否有警告或错误:

bash 复制代码
cargo publish --dry-run

第三部分:发布你的库

  1. 发布到 crates.io
    运行发布命令:
bash 复制代码
cargo publish
  1. 发布后的操作
  • 你的库现在可以在 crates.io 上找到

  • 文档会自动构建并发布到 docs.rs

  • 你可以通过以下命令更新版本:

    • 修改 Cargo.toml 中的版本号

    • 运行 cargo publish 再次发布

第四部分:最佳实践和注意事项

  1. 命名规范
  • 名称必须唯一(先到先得)

  • 只包含字母、数字、- 或 _

  • 建议使用小写字母和连字符

  • 避免使用 Rust 或 cargo 前缀

  1. 版本控制
  • 遵循语义化版本控制 (SemVer)

  • 0.x.y 版本可以随时进行破坏性更改

  • 1.0.0 后要谨慎进行破坏性更改

  1. 维护
  • 及时回复 issue 和 PR

  • 考虑添加 CI/CD 自动化测试和发布

  • 定期更新依赖项

  1. 更新已发布的库
  • 修改 Cargo.toml 中的版本号

  • 提交更改

  • 运行 cargo publish

  1. 无法删除版本
    注意:一旦发布,版本无法删除,只能标记为 "yanked"(撤回):
bash 复制代码
cargo yank --vers 1.0.0 your-library-name

第五部分:常见问题解决

  1. 名称已被占用
  • 尝试其他变体或添加后缀

  • 如果项目已废弃,可以联系维护者或 crates.io 团队

  1. 发布失败
  • 检查网络连接

  • 确保 token 正确配置

  • 检查 Cargo.toml 是否有错误

  1. 文档构建失败
  • 检查文档注释是否有错误

  • 确保所有公共API都有文档

通过以上步骤,你应该能够成功创建 crates.io 账号并发布你的 Rust 库。发布后,其他开发者可以通过在 Cargo.toml 中添加你的库作为依赖来使用它。

相关推荐
UestcXiye16 小时前
Rust 学习笔记:修复所有权常见错误
rust
hrrrrb16 小时前
【Rust】所有权
开发语言·后端·rust
Dreamfine1 天前
Rust将结构导出到json如何处理小数点问题
rust·json·dolphindb·rust_decimal·serde_json
muyouking111 天前
Rust多线程性能优化:打破Arc+锁的瓶颈,效率提升10倍
开发语言·性能优化·rust
heroboyluck2 天前
rust 全栈应用框架dioxus
前端·rust·dioxus
华纳云IDC服务商3 天前
如何利用Rust提升Linux服务器效率(详细操作指南)
linux·服务器·rust
UestcXiye3 天前
Rust 学习笔记:结构体(struct)
rust
若愚67923 天前
Tauri 跨平台开发指南及实战:用前端技术征服桌面应用(合集-万字长文)
前端·vue.js·rust·gitcode
夕水3 天前
自动化按需导入组件库的工具rust版本完成开源了
前端·rust·trae