精确的git命令行等同于Github中的"Pull Request"和"Fork Repo"按钮

Dav*_*est 10 git github pull-request git-fork

当我点击这些按钮时,Github在做什么?假设我在Github中执行拉取请求.我输入的git命令是什么(git pull ....?).分叉怎么样?Github在幕后做什么.

Gav*_*vin 7

git clone <URL for source repo>虽然GitHub上的repo是裸的(没有工作树"签出"文件),但是fork可以被认为是等效的,所以在幕后他们可能会做类似的事情git clone --bare <URL>.

pull请求是要求源回购的所有者拉其回购您的更改...,所以没有一个相应的Git命令.这有点像通过电子邮件通知该回购的所有者说"这里有一些我做过的改变,希望你喜欢它们".如果他们接受拉取请求,他们基本上会做相同的git pull <URL for your repo>.


Chr*_*ler 5

如果您想知道如何模仿分叉和拉取请求的行为,VonC已经回答了比我在这里更好的回答.基本上clonepull.

如果你对GitHub 在幕后实际做的事感兴趣,那就有点复杂了.来自 GitHub的@holman的 Zach Holman 最近发表了一篇题为"如何构建一个GitHub"的演讲,详细介绍了他们的实现.