摘要:我想在本地编辑文件,然后将其推送到Github和我的Web服务器上。我已经设置了两个远程库,所以现在我基本上能做到这一点;但是,我必须在本地检出分支A,在服务器上检出分支B。然后,我必须通过SSH登录到服务器并检出我想要的分支A。我真的不想要或需要第二个分支,但许多帖子建议您不能或不应该将内容推送到非裸存储库。一定有更好的方法。即使只使用rsync,也比这更容易(而且我这样做了一段时间)。奇怪的是,这在Github上从未发生过。几乎所有我的版本库都只有一个分支,我从未收到过此警告消息。警告消息说可以将
receive.denyCurrentBranch
设置为忽略,但我不知道它是否安全/明智。我希望有人能理解我的含糊描述(由于我对git的知识有限),并知道最佳解决方案。
/var/www/www.example.org
是服务器上实际的站点目录,post-receive
文件放在服务器上的裸仓库中(必须是不同的目录),而要推送到的 URL 是裸仓库。在提问之前,我确实阅读了你提到的指南。当site.git
目录没有我的任何文件时,我感到困惑,但现在我想我明白它是如何工作的了。谢谢。 - Daniel