![当 Git 服务器位于防火墙后面时,如何推送/拉取 Git 仓库?](https://linux22.com/image/1493938/%E5%BD%93%20Git%20%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%BD%8D%E4%BA%8E%E9%98%B2%E7%81%AB%E5%A2%99%E5%90%8E%E9%9D%A2%E6%97%B6%EF%BC%8C%E5%A6%82%E4%BD%95%E6%8E%A8%E9%80%81%2F%E6%8B%89%E5%8F%96%20Git%20%E4%BB%93%E5%BA%93%EF%BC%9F.png)
我的工作地点目前在其公司防火墙后面有一个 gitlab 服务器,目前他们的公共开发站点面向互联网。我只有在使用他们的 vpn 时才能访问 gitlab 服务器。我通常通过 ssh 直接在开发服务器上工作,当我推送代码时,我必须将其从服务器复制到我的本地桌面,然后手动将其推送到 gitlab 服务器。
开发服务器无法访问 gitlab 服务器。我希望能够在仓库中获取开发服务器的代码库。解决这个问题的最佳方法是什么?
答案1
您的开发服务器是否可以通过 ssh 从您的 git 服务器访问?如果可以,您可以将您的开发仓库克隆/拉取到 git 实验室服务器,然后从那里推送到同一台机器上的(裸?)仓库。这不是很好,因为所有内容都存在两次,您必须手动推送更改,但这也算是一种好处。也许您可以更改您的(非裸)git 服务器仓库,使用 git hooks 自动将其内容推送到中央裸存储库……