git-receive-pack如何工作?

时间:2012-05-19 03:24:13

标签: git

我想知道git-receive-pack是如何工作的,因为我完全不知道它会发生什么。任何人都可以对这个谜团有所了解吗?

2 个答案:

答案 0 :(得分:13)

According to the man page

http://schacon.github.com/git/git-receive-pack.html
  

此命令通常不会由最终用户直接调用。协议的UI位于git send-pack端,程序对用于将更新推送到远程存储库。有关拉动操作,请参阅git-fetch-pack(1)。

     

该命令允许在远程端创建和快速转发sha1 refs(磁头/标签)(严格来说,它是本地端git-receive-pack运行,但是对于坐在发送端的用户而言) -pack end,它正在更新遥控器。困惑?)

即使是编写该手册页的人也认为这是令人困惑的,所以不要责怪自己,你不理解它!

基本上,这是接收远程服务器上的提交的代码的一部分,当您执行send-pack时,git push在本地计算机上由{{1}}打包并发送。

理解它背后的细节并不重要 - 正如文档所说,它不是你应该实际键入的命令。

如果你真的对内部的工作方式非常感兴趣,那么有几个好的开始可能是:

The Wikipedia Page on Git (Software),   The Git Website itself,或   The free book, Pro Git

或者,您可以随时在github上的源代码中查看look the 'c' code up for that command

http://git-scm.com/

答案 1 :(得分:3)

git的存储库中有关于receive pack协议的详细文档。你可以在https://github.com/git/git/blob/master/Documentation/technical/pack-protocol.txt看到它。

相关问题