我想知道git-receive-pack是如何工作的,因为我完全不知道它会发生什么。谁能解开这个谜团?
问问题
10533 次
2 回答
18
http://schacon.github.com/git/git-receive-pack.html
此命令通常不由最终用户直接调用。该协议的 UI 在 git send-pack 端,程序对用于将更新推送到远程存储库。对于拉取操作,请参阅 git-fetch-pack(1)。
该命令允许在远程端创建和快速转发 sha1 refs(heads/tags)(严格来说,它是本地端 git-receive-pack 运行,但对于坐在 send-pack 端的用户,它正在更新遥控器。困惑吗?)
即使是编写手册页的人也认为它令人困惑,所以不要责怪自己你不理解它!
基本上,这是接收远程服务器上提交的代码的一部分,这些提交在send-pack
您执行git push
.
了解它背后的细节并不重要——正如文档所说,这不是你应该真正输入的命令。
如果您真的对它的内部工作方式非常感兴趣,那么可以从几个好的起点开始:
Git(软件)上的维基百科页面, Git 网站本身,或 免费书籍 Pro Git
或者,您可以随时在 github 上的源代码中查找该命令的“c”代码。
于 2012-05-19T03:36:09.033 回答
4
在 git 的存储库中有相当详细的接收包协议文档。你可以在这里看到它https://github.com/git/git/blob/master/Documentation/technical/pack-protocol.txt。
于 2015-07-30T02:48:15.087 回答