我正在尝试通过 P2P 创建 Git。(这很疯狂,我知道。)
问题很简单:我可以为 Git 创建一个自定义协议来替代 ssh://、git:// 和 http:// 吗?
是的,这绝对是可能的。Git 确实支持远程助手。从git fetch
手册页:
当 git 不知道如何处理某个传输协议时,它会尝试使用 remote-remote 助手(如果存在)。要显式请求远程助手,可以使用以下语法:
<transport>::<address>
有关远程助手的更多信息,请参见相应的手册页。如果该功能对您来说不够强大(快速扫描表明应该如此),您应该记住 git 是开源的;)。