首页 \ 问答 \ Windows SVN服务器上SVN和SVN + SSH的区别?(Differences between SVN and SVN+SSH on a Windows SVN server?)

Windows SVN服务器上SVN和SVN + SSH的区别?(Differences between SVN and SVN+SSH on a Windows SVN server?)

我试图理解常规svn://和svn + ssh://访问之间Subversion存储库安全性的差异。

我已经在自定义端口和IP地址中设置了我的Subversion存储库,并在防火墙上打开了相同的端口,并将存储库配置为仅对经过身份验证的用户进行访问。

据我所知,subversion svn:// access通过subversion端口连接,而svn + ssh://连接到ssh端口创建到服务器的隧道(就像使用PuTTY一样)。

我认为svn + ssh的使用是没有svn端口向世界开放的额外的附加安全性,还是我错过了其他的东西?

编辑:如何svn + ssh://命令不同于打开一个PuTTY隧道到我的服务器,并使用svn:// localhost /存储库,而不是? 我读过几篇关于如何让svn + ssh在windows下工作的文章,但是我无法理解所有的东西。 用PuTTY打开隧道工作​​得很好,但我必须记得在调用svn:// localhost / repository之前先打开它。


I'm trying to understand the differences in terms of subversion repository security between a regular svn:// and svn+ssh:// access.

I've setup my subversion repository in a custom port and ip address and opened that same port on the firewall, and configured the repository with access only to authenticated users.

From what I could understand, subversion svn:// access connects through the subversion port while svn+ssh:// connects to the ssh port to create a tunnel to the server (much like using PuTTY).

I assume that the use for svn+ssh is the extra added security of not having the svn port open to the world or am I missing something else?

EDIT: How is the svn+ssh:// command different than opening a PuTTY tunnel to my server and using svn://localhost/repository instead? I've read several articles on how to get subversion to get svn+ssh to work in windows but I can't make much sense of all. Opening a tunnel with PuTTY works just fine but I do have to remember to first open it before calling svn://localhost/repository.


原文:https://stackoverflow.com/questions/312370
更新时间:2023-03-31 11:03

最满意答案

它必须是一个字符串。 正如萨尔瓦多在评论中指出的那样,在你的例子中,你正在使用coordinatesX[1]等字面意思。 但是,如果你连接,JavaScript会为你创建一个字符串(如果你在字符串中添加一个数字,结果将是一个字符串)。 在你的情况下:

.attr("transform", "translate(" + coordinatesX[1] + "," + coordinatesY[4]) + ")");

It has to be a single string. As Salvador pointed out in the comments, in your example you were using coordinatesX[1] etc literally. But, if you concatenate, JavaScript creates a single string for you (if you add a number to a string, the result will be a string). In your case:

.attr("transform", "translate(" + coordinatesX[1] + "," + coordinatesY[4]) + ")");

相关问答

更多
  • select regexp_replace('XXXX_YYYY_ZZZZ', '^(.*?)_(.*?)_(.*)$', '\2_\1_\3') from dual select regexp_replace('XXXX_YYYY_ZZZZ', '^(.*?)_(.*?)_(.*)$', '\2_\1_\3') from dual
  • 它必须是一个字符串。 正如萨尔瓦多在评论中指出的那样,在你的例子中,你正在使用coordinatesX[1]等字面意思。 但是,如果你连接,JavaScript会为你创建一个字符串(如果你在字符串中添加一个数字,结果将是一个字符串)。 在你的情况下: .attr("transform", "translate(" + coordinatesX[1] + "," + coordinatesY[4]) + ")"); It has to be a single string. As Salvador poin ...
  • 那么,如果你愿意,你可以使用像这样的正则表达式: function translate(input, oldCharacters, newCharacters) { let output = input; const oldChArr = [...oldCharacters]; const newChArr = [...newCharacters]; for (let i = 0; i < oldChArr.length; i += 1) { output = output ...
  • 从文档 : 您不能使用空字符串to_string从返回值中删除from_string中的所有字符。 Oracle数据库将空字符串解释为空,如果此函数具有空参数,则它返回空值。 要删除from_string中的所有字符,请将另一个字符连接到from_string的开头,并将此字符指定为to_string 。 例如, TRANSLATE(expr, 'x0123456789', 'x')从expr中删除所有数字。 所以你可以做一些事情: select translate('abcdefg', '#abc', ' ...
  • 首先,TRANSLATE不会替换'<'符号,因为它没有机会。 CASE语句正在评估一个条件中的数字和另一个条件中的字符。 如果CASE的输出是一致的,我相信你的错误会消失: v_number := TO_NUMBER(REPLACE(TRANSLATE (CASE TO_CHAR(v_instr) WHEN '0' THEN UPPER(v_answer) ...
  • 我目前正在研究同样的问题。 由于外部文件被异步加载,摘要周期似乎太早了。 解决方法:在HTML中使用属性指令。 例:

    免责声明:这可能不是最好的解决方案,我自己还在学习AngularJS! Actually I found the issue, I had to put my locales files in the public folder. So this is fixed.
  • 因为这 float s = -theta; float c = theta; if (vPosition.y > 1.0) { gl_Position.y = vPosition.y - s; } else if (vPosition.y <= 0.0) { gl_Position.y = vPosition.y + c; } 基本上就是这个 if (vPosition.y > 1.0) { gl_Position.y = vPosition.y + theta; // vPos ...
  • str.translate()和unicode.translate()采用不同的参数。 这违反了LSP ,但鉴于Unicode字符串中有大量字符,因此是必需的。 word.lower().translate(dict((x, None) for x in string.punctuation)) str.translate() and unicode.translate() take different arguments. This violates LSP, but is required given ...
  • 现在,在Laravel 5.6+中,您可以在顶层创建语言环境json文件,并在ResetPassword中转换键。 例如 fr.json { "Reset Password Notification" => "Changement de mot de passe" } 请参阅https://laravel.com/docs/5.6/localization#using-translation-strings-as-keys 要翻译的相关行位于Illuminate\Auth\Notifications\ ...
  • 您应该先添加谷歌脚本。