簡體   English   中英

如何從命令行將 svn+ssh 與 Tortoise SVN 一起使用

[英]How to use svn+ssh with Tortoise SVN from the command line

我在使用 TortoiseSvn 的 Windows 7 工作站上嘗試使用以下語法簽出存儲庫時遇到問題:

svn co svn+ssh://user@ip/repo .

我做了什么來測試這個問題:

  • 修改 TortoiseSvn 的網絡設置指向 ..\\TortoisePlink.exe
  • 成功建立到目標機器的 ssh 連接,沒有任何問題
  • 使用 OpenSsh 從運行 Ubuntu 的工作站成功簽出存儲庫

當我嘗試從 Windows 7 工作站上的命令行執行上述語法時,出現錯誤:

svn: E720087: Unable to connect to a repository at URL 'svn+ssh:///user@ip/repo'
svn: E720087: Can't create tunnel:The parameter is incorrect.

有趣的是,如果我使用 tortoise gui 瀏覽到 repo,我可以成功打開並查看 repo。 但是為了編寫腳本,我需要從命令行執行此操作。

有什么建議么?

要使 svn+ssh 與 Tortoise 一起使用,請確保將%SVN_SSH%設置為您的 ssh 客戶端(可能是 Tortoise 或 Putty 的 plink.exe),並且必須使用正斜杠/或轉義反斜杠\\\\寫入路徑。

嘗試在轉義反斜杠時使用 plink 的絕對路徑設置%SVN_SSH% ,例如C:\\\\Program Files\\\\TortoiseSVN\\\\bin\\\\TortoisePlink.exe而不是..\\TortoisePlink.exe

  • 使用 Plink 手動連接到服務器。 定義需要和正確的(為您)plink 的啟動選項
  • 將此行(使用 tortoiseplink 作為 windowless-plink)添加到%APPDATA%config文件的[tunnels]部分

檢查 TortoisePlink 的路徑在你的 Tortoise SVN 配置中沒有損壞......

  1. 開始 > 程序文件 > Tortoise SVN > 設置
  2. 在常規設置下,“Subversion 配置文件:”點擊“編輯”
  3. 這將在記事本中打開配置文件
  4. 向下滾動到[tunnels]部分並檢查應該取消注釋的ssh值,使用雙斜杠等 - 我遇到了問題,因為在路徑的開頭似乎有一個 Unicode 控制代碼。
### On Windows, if you are specifying a full path to a command,
### use a forward slash (/) or a paired backslash (\\) as the
### path separator.  A single backslash will be treated as an
### escape for the following character. 
ssh = C\:\\Program Files\\TortoiseSVN\\bin\\TortoisePlink.exe

事實證明,配置文件的 Tunnels 部分中的行區分大小寫。

例如: sh = $SVN_SSH "C:/path/putty/plink.exe" -2 -C -i "C:/path/username/serversvn.ppk" 可能會起作用

sh = $SVN_SSH "C:/path/PuTTY/plink.exe" -2 -C -i "C:/path/username/serversvn.ppk" 不起作用

我有一個類似但略有不同的問題。

我嘗試通過 Pycharm 連接到我們的 SSH+SVN 服務器,但它掛了。 通過 Windows 右鍵單擊​​,tortoiseSVN 嘗試了常規方式,並遇到了同樣的“無法創建隧道”問題。

我相信這個問題是因為我試圖通過 pycharm 連接到我的 repo,它自動在 tortoise SVN 配置文件中創建了一條隧道線。

我跟着凱文薩德勒的回答,只是注釋掉了 ssh 行,然后就恢復正常了。 檢出和提交再次工作。

凱文的回答:

檢查 TortoisePlink 的路徑在你的 Tortoise SVN 配置中沒有損壞......

  1. 開始 > 程序文件 > Tortoise SVN > 設置
  2. 在常規設置下,“Subversion 配置文件:”點擊“編輯”
  3. 這將在記事本中打開配置文件
  4. 向下滾動到 [tunnels] 部分。 注釋掉 SSH 行。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM