【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 <your.email@example.com>"]
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 中添加你的库作为依赖来使用它。

相关推荐
烈风1 小时前
004 Rust控制台打印输出
开发语言·后端·rust
a7360153 小时前
二十二、包管理与发布 (Cargo 进阶)
开发语言·rust
编码浪子5 小时前
趣味学RUST基础篇(异步补充)
开发语言·后端·rust
烈风5 小时前
003 cargo使用
rust·cargo
songroom5 小时前
Rust : 关于Deref
开发语言·后端·rust
穷人小水滴12 小时前
胖喵必快 (pmbs): btrfs 自动快照工具 (每分钟快照)
linux·rust
钢门狂鸭20 小时前
关于rust的crates.io
开发语言·后端·rust
编码浪子20 小时前
趣味学RUST基础篇(异步)
服务器·rust·负载均衡
勇敢牛牛_1 天前
使用Rust实现服务配置/注册中心
开发语言·后端·rust·注册中心·配置中心
浪费笔墨1 天前
Rail开发日志_9
rust