0

我正在使用 svn+ssh 连接到 svn 存储库,该存储库又使用 unix 用户名和密码进行身份验证。一切正常。

但是,我在托管存储库的同一台服务器上也有一个已检出版本的存储库。当我尝试使用在 svn+ssh 上运行良好的同一用户提交对此版本的存储库所做的更改时,我收到“身份验证失败”错误。另一方面,更新工作正常。

可能是什么问题?

4

1 回答 1

1

您必须记住,如果您通过svn://它进行访问,则依赖于内部 svn 身份验证令牌来访问服务,而不是您的 ssh 凭据。

如果我创建一个 svn 存储库:

svnadmin create `pwd`/SVN
svnserve -d --root `pwd`/SVN

从另一个窗口:

svn co svn://127.0.0.1
cd 127.0.0.1
touch foo; svn add foo; svn commit -m'[foo]' foo

产生错误:

svn: Commit failed (details follow):
svn: Authorization failed

然而:

svn co svn+ssh://127.0.0.1/home/pshanahan/SVN FRED
cd FRED
touch foo; svn add foo; svn commit -m'[foo]' foo

works without error as it relies on being able to access the repository as a local file.

于 2012-10-04T13:00:24.993 回答