< 返回版块

YiiSh 发表于 2023-11-11 09:55

先上链接:https://github.com/mokeyish/cargo-patch-crate

在开发的过程中,不可避免出现这些问题:

  1. 第三方库有 bug,即使自己提交修复 PR,出于种种原因没有及时合并,但自己项目又要用。
  2. 第三方库,某某结构体或者函数居然是私有的,想改成 pub 给自己用。

这个 cargo-patch-crate 就可以三个主要步骤就可以达到这个目的了。

  1. 直接修改第三方库的代码
  2. 用命令给这个库创建 patch
  3. git 提交 patch。

PS:详细请见 README.md 以及样例项目 patch-crate-example,给 rustix 增加 hello_world 函数,并调用它。

虽然 cargo 官方支持 patch 功能,但是它是要克隆目标仓库的,单独维护一个 git 仓库,要进行版本更新麻烦。 这个 cargo-patch-crate 不用单独维护 git 仓库,即使有新版本,也只需要修改依赖的版本号后重新 apply patch 即可。

评论区

写评论

还没有评论

1 共 0 条评论, 1 页