git 配置ssh_cargo 解决git依赖私库办法

本文介绍了Rust项目中如何通过Cargo管理私有仓库依赖,包括SSH配置、`Cargo.toml`文件的设置以及解决ssh-agent问题。通过指定git仓库的tag或branch来锁定依赖版本,并提供了遇到问题时的解决方案链接。
摘要由CSDN通过智能技术生成

Rust实际场景,不仅需要依赖https://crates.io/的公共mod,自己依赖的git私库服务也是常见现象。 cargo正好也解决了私库依赖的问题。详细说明见链接: https://doc.rust-lang.org/cargo/reference/specifying-dependencies.html#specifying-dependencies-from-git-repositories

0c530d2a36e2766ba1bba3fd09f4e20b.png

cargo依赖git私库解决办法

  • 1. 添加.ssh/config配置
Host *
   UseKeychain yes
   AddKeysToAgent yes
   IdentityFile ~/.ssh/id_rsa
  • 2. 指定私钥文件
MACOS下执行: ssh-add -K ~/.ssh/id_rsa
Linux下执行: ssh-add -k ~/.ssh/id_rsa
  • 3. cargo 的toml文件添加依赖,如下
[package]
name = "demo_rust"
version = "0.1.0"
authors = ["baoyachi <baoyachi>"]
edition = "2018"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]
json               = "0.4"
pretty_env_logger = "0.3"
serde             = "1.0"
common-utils = { git = "ssh://git@xxx.com/common/common-utils.git", tag = "v0.0.1" }
common-log = { git = "ssh://git@xxx.com/common/common-log.git", branch = "master" }

这里的 common-utils common-log 就是私库的具体依赖。

common-utils = { git = "ssh://git@xxx.com/common/common-utils.git", tag = "v0.0.1" }
common-log = { git = "ssh://git@xxx.com/common/common-log.git", branch = "master" }
  • 这里的git使用ssh方式访问
  • tag :表示当前git上的tag
  • branch :表示当前git的 分支号 通常,我们会采用tag对依赖的git代码管理;branch的缺点无法lock代码。
  • 执行cargo build 正常情况下,cargo build可以正常下载crates.io和git私库代码
  • 关于Rust crates 国内镜像源加速配置,请点击查看:
包牙齿:Rust crates 国内镜像源加速配置​zhuanlan.zhihu.com
3c7dc607f3484d615c14394de69ea800.png
  • 关于Rust 下载安装加速指南,请点击查看
包牙齿:Rust 下载安装加速指南​zhuanlan.zhihu.com
f2ae8c91b7782fa4f0365c3eecfd3280.png
  • 关于Rust错误处理,请点击查看
包牙齿:细说Rust错误处理​zhuanlan.zhihu.com
2d320baeaa38ce1a4e66d5b7e70bd51c.png

--------分割线----------

update:2020-04-16

如果遇到 ssh-agent失败问题,请查看链接:https://github.com/rust-lang/cargo/issues/2078

在config文件添加如下配置:

[net]
git-fetch-with-cli = true
在Windows上安装Raydium可能会有一些额外的步骤,因为它通常倾向于在Linux和macOS上运行,但是仍然可以尝试。这里提供一个简化版的步骤,你需要手动安装一些依赖项: 1. **下载和安装Rust**: 首先,确保你已经在[官网](https://www.rust-lang.org/tools/install)上安装了Rust编程语言,Windows用户可以使用Chocolatey包管理器来安装: ```powershell choco install rustup -y rustup update ``` 2. **安装Git**: 因为Raydium从GitHub仓库克隆,所以你也需要Git。可以从[官方网站](https://git-scm.com/download/win)下载并安装。 3. **下载Ray源码**: ```powershell git clone https://github.com/ray-project/ray.git cd ray ``` 4. **配置环境变量**: 添加Rust bin目录到系统的PATH环境变量中,这将允许你在命令行直接运行Rust命令。 5. **构建Ray**: 进入Ray的根目录后,按照非Windows用户的步骤运行`cargo build --release`,不过可能需要调整部分依赖处理,因为Windows对某些库支持不如Unix平台。 6. **启动Ray服务**: 由于Windows上的资源限制,直接启动Ray Cluster可能存在问题。一种选择是在Linux虚拟机(如Docker或VirtualBox)中安装Ray,然后在Windows上连接它。 7. **连接到Ray**: 使用Windows上的`cmd.exe`或PowerShell,通过SSH连接到运行Ray的服务。 请注意,Windows上的环境差异可能会导致安装过程复杂,因此推荐使用Docker或其他容器技术来运行Ray。如果你想要更稳定的体验,最好在其他支持的平台上搭建Ray环境。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值