远程服务器上需要安装 git,只能通过 ssh 访问

标签 git

我正在尝试从远程机器访问当前不包含任何 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/

相关文章:

node.js - Git diff 不适用于 Windows 绝对路径

git - 在 git 中使一些子模块可选

android - 使用 repo 下载 AOSP android-4.4.4_r2

git - 如何在 libcurl 中启用 https 支持?

git - 我如何知道 git 存储库的深度?

linux - git 是一个很好的备份工具吗?

Git Server Hooks - 它们是在客户端/克隆机器上本地执行的吗?

git - 为每个提交创建单独的 pull 请求

git - 如何获取 'git clone --recursive' 以在本地克隆子模块?

git - 使用绝对路径获取 Git repo url