我正在尝试从远程机器访问当前不包含任何 git 安装的服务器机器。问题是:服务器机器是否需要任何类型的 git 安装(我假设它需要)才能仅通过带有 git 的 ssh 从客户端工作?
最佳答案
是的,你需要在服务器上安装 git
如果服务器上没有 git,您就无法推送/pull 到远程。您用于远程操作 git 存储库的协议(protocol)不会改变这一点。
可怜的 git
如果你真的需要/想要将你的 .git 目录同步到远程服务器,你可以这样做。因为 .git/objects 目录中的所有文件都基于哈希,所以不会发生任何冲突。
原则上这意味着:
# git push
rsync -rv .git server:repo.git
# git pull
rsync -rv server:repo.git .git
git reset HEAD --hard # Here lies the problem with this technique.
关于远程服务器上需要安装 git,只能通过 ssh 访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10887107/