执行git upload-pack相关命令后无法获取packfile的问题求助
执行git upload-pack相关命令后无法获取packfile的问题求助
各位大佬好,我最近在手动调试Git的git upload-pack交互流程时碰到了棘手的问题——不管怎么执行命令,都拿不到预期的packfile,也没有任何错误提示,实在摸不着头脑,来请教大家!
先说说我的操作步骤:
- 首先执行了advertise-refs命令来获取仓库引用信息,命令和输出如下:
git upload-pack --stateless-rpc --advertise-refs data/build-your-own-x
输出内容:
010d8e628eb428a55ea4909de4af9a82e99db346ed83 HEADmulti_ack thin-pack side-band side-band-64k ofs-delta shallow deepen-since deepen-not deepen-relative no-progress include-tag multi_ack_detailed no-done symref=HEAD:refs/heads/master object-format=sha1 agent=git/2.34.1 003f8e628eb428a55ea4909de4af9a82e99db346ed83 refs/heads/master 00468e628eb428a55ea4909de4af9a82e99db346ed83 refs/remotes/origin/HEAD 00488e628eb428a55ea4909de4af9a82e99db346ed83 refs/remotes/origin/master
这一步看起来是正常的,拿到了所有引用信息。
- 接着我执行了stateless-rpc命令来请求packfile,命令是:
git upload-pack --stateless-rpc data/build-your-own-x/
然后输入了请求内容:
0032want 8e628eb428a55ea4909de4af9a82e99db346ed83 0000
结果执行完之后没有任何输出,既没有错误信息,也没有生成我需要的packfile。
我去翻了Git官方文档,里面给出的示例请求格式是这样的:
=> POST $GIT_URL/git-upload-pack HTTP/1.0
0032want 0a53e9ddeaddad63ad106860237bbf53411d11a7
0032have 441b40d833fdfa93eb2908e52742248faf0ee993
0000
文档里明确说这个请求的响应会包含成功或失败的信息,同时会返回packfile,但我按照类似的格式发送请求,还是拿不到packfile。
有没有大佬知道问题出在哪?麻烦指点一下,谢谢!
备注:内容来源于stack exchange,提问作者liang172
相关产品推荐
相关产品推荐

