2

我想用subgit2.0.2 检查 glassfish svn。

我添加了

ssh-rsa blabla user@host

在 java.net 的用户帐户设置中。密钥本地存储在~/.ssh/authorized_keys和下id_rsa.user@host.pub

我设置subgitsubgit configure --svn-url svn+ssh://javauser@svn.java.net/glassfish~svn /path/to/folder更改/path/to/folder/config

[core]
    repositoryformatversion = 0
    filemode = true
    bare = true
    logallrefupdates = false
    bigFileThreshold = 1m

[svn]
    url =  svn+ssh://javauser@svn.java.net/glassfish~svn 

[auth "default"]
    sshKeyFile = /home/user/.ssh/id_rsa.user@host.pub

subgit install /path/to/folder由于error: svn: E170001: Authentication required for 'javauser@svn+ssh://svn.java.net'.

编辑 1 和 3:我想结帐,因为svn+ssh我得到了svnhttps

  • error: svn: E175002: PROPFIND of '/': 405 Method Not Allowed (https://svn.java.net)或者
  • error: svn: E175002: PROPFIND of '/svn/glassfish~svn': 502 Proxy Error (https://svn.java.net)

在不同的时间段之后(有时立即,有时几天后(这是一个大结帐......),但我从未设法完全结帐/克隆),因为服务器以这种方式http强制执行,我收到了重定位错误。https

编辑2:当我调用ssh javauser@svn.java.net并且ssh javauser@java.net我得到Permission denied (publickey).并且我不确定这是否是有意的,因为我想我不应该能够登录java.net服务器或者密钥是否不起作用。

编辑 3: java.net 似乎允许所有REPORT请求(我不太熟悉svn,也许这非常罕见,并且依赖于底层协议的一些扩展,这些扩展卡在配置错误的防火墙中 - 为什么它总是会在REPORT请求时超时?)即使使用 . 也无法结帐svn

4

1 回答 1

0

似乎subgit没有使用您的 SSH 密钥进行授权。

我猜你必须指定配置的authsvn,尽管可以假设它default默认使用。尝试以下操作:

[svn]
    url = svn+ssh://javauser@svn.java.net/svn/glassfish~svn 
    auth = default

更新:我刚刚意识到您使用了错误的 URL。它一定要是:

svn.java.net/svn/glassfish~svn _ _

更新#2:

如果您不想为存储库做出贡献,则匿名签出就足够了。尝试以下配置:

[svn]
    url = https://svn.java.net/svn/glassfish~svn
    auth = default

[auth "default"]

我试过了,它开始了,但看起来需要很长时间才能完成。如果只检查更具体的内容,例如 GlassFish 4.0 分支(将 url 更改为https://svn.java.net/svn/glassfish~svn/branches/4.0/),也许会有所帮助。

如果这对您也不起作用,另一种选择是使用svn(就像它应该的那样)签出存储库。以下应该有效(您需要一个svn客户):

svn checkout https://svn.java.net/svn/glassfish~svn /path/to/something

您还可以svn使用subgit. 说明可以在SubGit Book for Local Mode中找到。

也可以看看:

于 2014-07-13T13:44:28.680 回答