#commit #version-control #ui #git #interactive #source #hg

bin+lib scm-record

UI 组件,用于交互式选择要包含在提交中的更改

3 个版本 (破坏性更新)

0.3.0 2024年5月26日
0.2.0 2023年12月25日
0.1.0 2023年8月19日

#1325开发工具

Download history 1155/week @ 2024-04-26 1421/week @ 2024-05-03 1989/week @ 2024-05-10 1712/week @ 2024-05-17 1877/week @ 2024-05-24 1151/week @ 2024-05-31 1083/week @ 2024-06-07 2111/week @ 2024-06-14 2297/week @ 2024-06-21 3359/week @ 2024-06-28 1621/week @ 2024-07-05 2692/week @ 2024-07-12 2080/week @ 2024-07-19 1382/week @ 2024-07-26 2076/week @ 2024-08-02 2893/week @ 2024-08-09

9,074 每月下载次数
用于 17 个crate(5 个直接使用)

MIT/Apache

235KB
6K SLoC

许可证

MIT OR Apache-2.0

scm-record

scm-record 是一个 UI 组件,用于交互式选择要包含在提交中的更改。它旨在嵌入到源代码控制工具中。

您可以将此视为 git add -p 的交互式替代品,或 hg crecord/hg commit -i 的重新实现。给定用户创建的一组更改,此组件将它们展示给用户,并允许用户选择哪些更改应该提交。

scm-record最初是作为git-branchless的支持库开发的。

scm-diff-editor

当使用--features scm-diff-editor编译时,将可用 scm-diff-editor 二进制文件。

这是一个独立的二进制文件,使用 scm-record 库作为前端,可以直接集成到某些源代码控制系统中。

与其他项目的集成

以下是一些不使用scm-record的项目,但可以从与它的集成中受益(在你的贡献下)

功能愿望清单

以下是一些UI中尚未实现的功能

  • 使键绑定更容易被发现,允许使用键盘访问菜单。
  • 跳转到同一类型的下一个/上一个元素。
  • 在编辑器中编辑diff的一侧。
  • 多路拆分UI将提交拆分成多个提交。
  • 支持用作合并工具。
  • 选择ours/theirs的命令,以表示合并冲突的diff。

依赖关系

~6–15MB
~173K SLoC