You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过SSH在Git GUI客户端打开远程Linux虚拟机上带本地修改的Git仓库

可行性结论

常见Git GUI客户端本身不直接支持「通过SSH打开已有远程仓库」的原生操作,但可以通过两种通用方案实现需求,全程不需要搭建额外Git服务端,仅依赖现有SSH访问权限,且不会丢失远程仓库内的未提交修改。

方案1:SSHFS挂载远程目录(全客户端兼容,推荐)

该方案将远程Linux上的Git仓库目录通过SSH协议映射成本地可访问的目录,所有Git GUI都会将其识别为普通本地仓库,操作逻辑和本地仓库完全一致。

操作步骤

  • 本地安装SSHFS依赖:
    • Windows:安装WinFsp与SSHFS-Win官方组件
    • macOS:通过Homebrew执行brew install macfuse sshfs
    • Linux:通过发行版包管理器安装,例如Debian/Ubuntu执行sudo apt install sshfs
  • 创建本地空目录作为挂载点,执行挂载命令:
    命令格式:sshfs [SSH用户名]@[远程主机地址]:[远程Git仓库绝对路径] [本地挂载点路径]
    示例:sshfs work@192.168.3.20:/home/work/dev/my-project /mnt/remote-my-project
  • 挂载完成后打开SmartGit/SourceTree,选择「打开本地仓库」,选中本地挂载点目录即可直接操作,所有提交、分支修改都会实时同步到远程虚拟机的仓库中。
  • 卸载方式:Windows右键挂载盘符选择卸载,macOS/Linux执行umount [本地挂载点路径]
方案2:客户端原生SSH远程访问(无需挂载,仅支持部分客户端)

部分Git GUI内置了SSH文件访问能力,可以直接读取远程路径的仓库,不需要额外挂载目录。

SmartGit操作流程

  • 打开SmartGit,选择Repository > Open
  • 路径输入框直接填写SSH格式的仓库地址,格式为:ssh://[SSH用户名]@[远程主机地址]/[远程Git仓库绝对路径]
    示例:ssh://work@192.168.3.20/home/work/dev/my-project
  • 按提示输入SSH密码或选择对应的私钥完成验证后,即可直接操作远程仓库。

SourceTree操作说明

SourceTree暂无原生SSH远程目录访问能力,使用该工具建议选择方案1。

注意事项
  • 操作前确认SSH账号对远程Git仓库目录有读写权限
  • 若使用SSH密钥登录,提前在SSHFS或Git客户端中配置好私钥路径,避免重复输入密码
  • 避免同时通过多个工具(SSH命令行、VS Code远程、Git GUI)操作同一个仓库的同一文件,防止出现锁冲突

内容的提问来源于stack exchange,提问作者Ivan Rovelov

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 09:45:04