12 个版本 (7 个稳定版)

1.4.2 2024 年 8 月 20 日
1.2.1 2024 年 5 月 14 日
1.1.2 2024 年 4 月 16 日
1.1.1 2024 年 3 月 8 日
0.0.2 2023 年 5 月 23 日

166开发工具 中排名 #166

Download history 170/week @ 2024-05-08 72/week @ 2024-05-15 15/week @ 2024-05-22 1/week @ 2024-06-05 1/week @ 2024-06-12 1/week @ 2024-07-03 164/week @ 2024-08-14

164 每月下载次数

MIT 许可证

385KB
9K SLoC

ngit

通过 nostr 发送和审查补丁的命令行工具

  • 无缝与 gitworkshop.dev 一起工作
  • 完全实现了 nostr git 协议(nip34)
  • 允许将提案作为分支管理,类似于 GitHub PR,或像邮件中的补丁一样

有关更多详细信息,请参阅 gitworkshop.dev/ngitgitworkshop.dev/about

git-remote-nostr

ngit 包含的 git 远程助手(git 插件),当与 nostr 远程一起使用时,可以启用 nostr 与原生 git 命令的集成

  • 使用 git 服务器(用于数据同步)存储在 nostr 事件中的仓库状态
  • 将前缀为 pr/* 的开放提案分支视为

简介

nostr 是一个去中心化的通信协议,具有

  • 无需许可的账户创建 - 通过公钥/私钥对创建
  • 可验证的签名消息
  • 消息通过中继而不是 P2P 传输

对于代码协作,nostr 用于

  • 仓库标识和发现
  • 状态(即 git 引用)
  • 提案(PR)、问题和相关讨论

仍需要 git 服务器进行数据存储和状态同步。可以使用多个 git 服务器进行冗余,维护者可以像 nostr 中继一样无缝替换它们。

例如,自托管、GitHub、Codeberg 等。

             ┌──────────┐
             │  Author  │
             └──/─┬─\───┘
        ,------''--------.-------.
┌──────▼─┐   ┌────▼───┐   ┌───▼───┐  ┌─▼─────┐  ┌───────┐
│  Git   │   │  Git   │   │ Relay │  │ Relay │  │ Relay │
│ Server │   │ Server │   │       │  │       │  │       │
└────────┘   └────\───┘   └───┬───┘  └──/────┘  └─/─────┘
                   \------.,----/---------/
                         ┌─▼──▼──▼─┐
                         │  User   │
                         └─────────┘

ngit 命令

从 git 仓库目录中运行

  • ngit init 通知您是此仓库的维护者,将通过 nostr 接受提案
  • ngit send 将提交作为提案发送
  • ngit list 列出提案;检出、应用或下载所选内容
  • ngit fetch 从仓库下载最新的更新,以便离线使用 ngit list

在提案分支上时

  • ngit push 发送提案修订
  • ngit pull 获取并应用与分支关联的新提案提交/修订

欢迎贡献!

使用 ngit 提交提案!

gitworkshop.dev/r/naddr1qqzxuemfwsq3gamnwvaz7tmjv4kxz7fwv3sk6atn9e5k7q3q5qydau2hjma6ngxkl2cyar74wzyjshvl65za5k5rl69264ar2exsxpqqqpmejawq4qj 用于报告问题和查看提案

使用 cargo install ngit 安装此工具,使用预构建的二进制文件或从 master 分支构建。

依赖项

~49–65MB
~1M SLoC