为什么在检查 svn 中是否存在分支时会出现身份验证错误?
Why do I get an authentication error when checking if a branch exists in svn?
当有人提交时,我需要确定将其添加到我们内部版本控制器中的哪个项目。其中一个因素是是否创建了某个分支。
我有函数:
private static string SVN(字符串命令)
{
StringBuilder 输出 = new StringBuilder();
进程 procMessage = new Process();
//Start svnlook.exe in a process and pass it the required command-line args.
procMessage.StartInfo = new ProcessStartInfo(
@"C:\Program Files\VisualSVN Server\bin\svn.exe",
command
);
procMessage.StartInfo.RedirectStandardOutput = true;
procMessage.StartInfo.UseShellExecute = false;
procMessage.Start();
//While reading the output of svn, append it to the stringbuilder then
//return the output.
while (!procMessage.HasExited)
{
output.Append(procMessage.StandardOutput.ReadToEnd());
}
return output.ToString();
}
正在调用的是:
string nextRelease = SVN("ls https://server:port/svn/repo/branches/branchname");
然后检查nextRelease是否为空。
这适用于我本地存储库上的本地 PC,但是当我在服务器上安装提交挂钩时,出现如下错误:
Error: svn: E170013: Unable to connect to a repository at URL 'https://server:port/svn/repo/branches/branchname'
Error: svn: E175013: Access to '/svn/repo/branches/branchname' forbidden
SVNLook 没有提供我能找到的信息,并且用户大概是 SVN 用户,因此它可以访问 SVN。
我错过了什么?
运行 svn.exe 客户端的用户帐户无权访问 https://server:port/svn/repo/branches/
及其子项或 https://server:port/svn/repo/branches/branchname
。仔细检查权限。
当有人提交时,我需要确定将其添加到我们内部版本控制器中的哪个项目。其中一个因素是是否创建了某个分支。
我有函数:
private static string SVN(字符串命令) { StringBuilder 输出 = new StringBuilder(); 进程 procMessage = new Process();
//Start svnlook.exe in a process and pass it the required command-line args.
procMessage.StartInfo = new ProcessStartInfo(
@"C:\Program Files\VisualSVN Server\bin\svn.exe",
command
);
procMessage.StartInfo.RedirectStandardOutput = true;
procMessage.StartInfo.UseShellExecute = false;
procMessage.Start();
//While reading the output of svn, append it to the stringbuilder then
//return the output.
while (!procMessage.HasExited)
{
output.Append(procMessage.StandardOutput.ReadToEnd());
}
return output.ToString();
}
正在调用的是:
string nextRelease = SVN("ls https://server:port/svn/repo/branches/branchname");
然后检查nextRelease是否为空。 这适用于我本地存储库上的本地 PC,但是当我在服务器上安装提交挂钩时,出现如下错误:
Error: svn: E170013: Unable to connect to a repository at URL 'https://server:port/svn/repo/branches/branchname'
Error: svn: E175013: Access to '/svn/repo/branches/branchname' forbidden
SVNLook 没有提供我能找到的信息,并且用户大概是 SVN 用户,因此它可以访问 SVN。
我错过了什么?
运行 svn.exe 客户端的用户帐户无权访问 https://server:port/svn/repo/branches/
及其子项或 https://server:port/svn/repo/branches/branchname
。仔细检查权限。