在Linux环境下,Rust项目的版本控制主要分为两部分:Rust工具链的版本管理(通过rustup)和项目代码的版本控制(通过Git)。两者结合可实现从工具链到项目代码的全生命周期版本管理。
rustup是Rust官方提供的工具链管理工具,用于安装、切换、更新Rust编译器(rustc)及配套工具(如cargo),是Rust版本控制的核心工具。
通过官方脚本一键安装(需联网):
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
安装过程中会提示是否安装rustup组件(如rustfmt、clippy),默认按回车键即可。安装完成后,rustup会自动更新Shell配置文件(.bashrc或.zshrc),添加Rust工具链路径。
运行以下命令检查Rust版本,若输出版本号则表示安装成功:
rustc --version # 查看Rust编译器版本
cargo --version # 查看Cargo(Rust包管理器)版本
查看已安装版本:
rustup show
输出当前默认版本及已安装的所有版本。
安装特定版本:
指定版本号安装(如1.70.0):
rustup install 1.70.0
切换默认版本:
将指定版本设为全局默认(后续所有项目默认使用该版本):
rustup default 1.70.0
临时使用特定版本:
在命令前添加rustup run,仅当前命令使用指定版本(不影响全局设置):
rustup run 1.70.0 cargo build
卸载版本:
删除指定版本的工具链:
rustup uninstall 1.69.0
更新工具链:
将所有已安装的Rust版本更新至最新稳定版:
rustup update
Git是Linux环境下最流行的分布式版本控制系统,用于跟踪项目文件的变更、协作开发及版本发布。
多数Linux发行版可通过包管理器安装(以Ubuntu为例):
sudo apt update
sudo apt install git
安装完成后,运行git --version验证是否成功。
进入Rust项目根目录(包含Cargo.toml文件的目录),运行以下命令初始化仓库:
git init
这会在项目目录下创建.git隐藏文件夹,存储版本控制信息。
添加文件到暂存区:
将项目文件添加到Git暂存区(git add .添加所有文件,git add src/main.rs添加特定文件):
git add .
提交更改:
将暂存区的更改提交到本地仓库,需添加描述性提交信息(如Initial commit):
git commit -m "Initial commit"
若需将项目托管到GitHub、GitLab等平台,需先在平台创建远程仓库(如https://github.com/username/repo.git),然后将本地仓库与远程仓库关联:
git remote add origin https://github.com/username/repo.git
首次推送时,使用-u参数设置默认跟踪分支:
git push -u origin main # 若远程分支为main(GitHub默认)
拉取远程更改:
获取远程仓库的最新提交并合并到本地:
git pull origin main
创建分支:
基于当前分支创建新分支(如feature/new-login):
git checkout -b feature/new-login
合并分支:
切换到目标分支(如main),将feature分支的更改合并进来:
git checkout main
git merge feature/new-login
删除分支:
删除本地不再需要的分支(如feature/new-login):
git branch -d feature/new-login
若需强制项目遵循Conventional Commits规范(如feat: 新增功能、fix: 修复bug),可使用Cocogitto工具自动化版本管理。
pacman -S cocogitto
cog命令替代git commit,自动格式化提交信息:cog commit feat "新增用户登录功能"
cog.toml文件(如指定版本号规则),Cocogitto会根据提交历史自动生成新版本并更新CHANGELOG.md。通过以上步骤,可在Linux环境下实现Rust工具链与项目代码的高效版本控制,确保开发流程的规范性与可追溯性。