Rust环境准备

Rust环境准备

安装Rust

安装有助于Rust开发的vscode插件

  • crates: Rust 包管理
  • Even Better TOML: TOML 文件支持
  • Better Comments: 优化注释显示
  • Error Lens: 错误提示优化
  • GitLens: Git 增强
  • indent-rainbow: 缩进显示优化
  • Prettier - Code formatter: 代码格式化
  • REST client: REST API 调试
  • rust-analyzer: Rust 语言支持
  • Rust Test lens: Rust 测试支持
  • Rust Test Explorer: Rust 测试概览
  • TODO Highlight: TODO 高亮
  • vscode-icons: 图标优化
  • YAML: YAML 文件支持

cargo-generate

cargo是rust的包管理工具,类似python的pip。cargo-generate是rust的一个用于生成项目模板的工具包,它可以使用已有的github repo为模板来生成新的项目。

bash 复制代码
cargo install cargo-generate
cargo generate github-template-url

pre-commit

在创建一个项目是,执行pre-commit安装命令,

bash 复制代码
pre-commit install

会在本地生成一个pre-commit hook(.git/hooks/pre-commit),之后在提交代码时,pre-commit会先做一个基本的检查。

cargo-deny

cargo-deny是rust的一个用于检查依赖安全性的工具包。应用场景:如果项目中某个依赖是GPLv3那么这个项目代码必须开源,使用cargo-deny可以检查这个。

typos-cli git-cliff nextest

Cargo.toml

提交第一个pr

在本地先利用cargo-generate创建一个rust repo,并创建pre-commit hooks

bash 复制代码
mkdir -p /path/to/project-root; cd /path/to/project-root
cargo generate --git https://github.com/github-username/template-name
cd /path/to/project-root/project-name/
pre-commit install
git add .
git commit -a

之后在GitHub上创建一个remote repo,

再通过以下命令将本地repo关联到remote并push,

bash 复制代码
git remote add origin git@github.com:github-username/project-name.git
git branch -M main
git push -u origin main

创建pr

bash 复制代码
vim cliff.toml
git checkout -b temporary-branch
git commit -a
git push origin temporary-branch

之后在GitHub上可以看到上面创建的新分支,点击Compare & pull request,输入pr信息后创建新的pr(Create pull request),review后merge(建议以squash commit merge),merge后删掉新分支,这种新分支属于临时分支。


先看一下本地cliff.toml内容,是修改过后的url,因为本地分支是temporary-branch,checkout回main分支,再看cliff.toml内容,是修改前的url,将remote repo pull到本地,可以看到cliff.toml内容已经更新

bash 复制代码
vim cliff.toml 
git checkout main
vim cliff.toml 
git pull
vim cliff.toml 
相关推荐
不会C语言的男孩4 分钟前
C++ Primer 第18章:用于大型程序的工具
开发语言·c++
星栈5 分钟前
Makepad 界面怎么做得更像产品,而不是示例
前端·rust
Soofjan7 分钟前
其它(5):Bleve 全文检索
后端
Gopher_HBo7 分钟前
Go语言学习笔记(七)并发
后端
智碳未来科技有限公司9 分钟前
工业双碳实践:基于 SpringBoot + 若依的智碳能源管理系统(zhitan-ems)源码深度解析与落地实战
spring boot·后端·能源
星恒随风11 分钟前
C++ 类和对象入门(三):拷贝构造、赋值运算符重载和深浅拷贝
开发语言·c++·笔记·学习
RickyWasYoung12 分钟前
【Matlab】科研绘图配色-极简版
开发语言·matlab
biubiubiu070612 分钟前
SpringBoot生产级日志配置
java·spring boot·后端
碎碎念_49212 分钟前
SpringBoot和MyBatis框架·速通版
spring boot·后端·mybatis
凡人叶枫13 分钟前
Effective C++ 条款03:尽可能使用 const
linux·开发语言·c++·嵌入式开发