我正在玩git's transfer protocols,在我尝试阅读源代码之前,我只是想知道是否有一些详细的规范?
答案 0 :(得分:10)
2018年5月更新:从2018年第二季度开始和Git 2.18开始,您将拥有 Git传输协议v2 :请参阅“How does Git's transfer protocol work”。
2013年原始答案:
首先,检查git repo本身的git文档(使用good grep,可用even on Windows):
git clone https://github.com/git/git
cd git/Documentation
grep -nRHI "receive-pack" *
这将指导您:
然后,您可以使用与后端命令相关的文档完成该组文档:
查看来源的一种方法是查看git仓库中最近围绕转移和运输的演变:
git clone https://github.com/git/git
cd git
git log -Stransfer
看看:
另一种方法是查看git的其他实现:
Transport.java
来源(在TransportTest.java
中测试,后者会降低到:
C,libgit2及其src/transports
来源。
......等等
答案 1 :(得分:2)
在Github Gist上还有一个部分完成的documentation。
This metasploit模块也构成一个恶意的哑服务器,服务于糟糕的git树。你可以看到如何构建git树。