通过 ssh 从 svn 存储库签出

San*_*der 7 ssh svn

我真的很想知道如何通过 SSH 连接从仅在 svn 协议上提供服务的远程机器(因此没有使用 Apache 等的 WebDAV)签出 SVN 存储库。

有人能告诉我怎么做吗?

所以,这里的情况再次澄清:

San*_*der 5

  1. 如果您的 SVN 服务器未在默认端口 22 上运行:添加隧道条目~/.subversion/config

    打开文件,查找 [tunnels] 和一行,例如:

    sshserver = ssh -p [运行 ssh 服务器的端口] -q

    对于所有人:如果您在尝试结帐时遇到“被信号 15 杀死”的情况,请添加 -q。

  2. 使用远程位置的绝对路径结帐

    在此示例中,我们使用步骤 1 中配置的隧道条目。

    svn co svn+sshserver://user@server/absolute/path/to/svn/repository/project/
    
    Run Code Online (Sandbox Code Playgroud)

更多背景信息:


jaq*_*sam 5

为什么仍然使用 svn :-) 尝试 git

通过ssh

svn co svn+ssh://user@path/to/svn/repo/
或者
git svn clone svn+ssh://user@path/to/svn/repo/

通过https

svn co https://user@path/to/svn/repo/
或者
git svn clone https://user@path/to/svn/repo/

当第一个用户名不起作用时,请按 Enter。然后就可以输入正确的用户名了。

  • 我知道,如果你还没有这样做的话,现在是每个人都转向 git 的好时机。这里我们仍然有 svn 存储库,这就是我遇到这个解决方案的原因;-) (2认同)
  • 只需指出一个转向 git 的“真正”充分理由即可。SVN 更容易,允许签出子目录并执行 git 执行的所有操作,但分布式服务器除外。根本没有真正的理由转向它。 (2认同)