我正在编写一些C#代码以一次性完成对SVN的多次提交,就像工具svnmucc一样。到目前为止,我一直在使用SharpSvn与SVN进行其余的必要通信,因此我认为我可以利用它来完成以下任务:
如何获得SharpSvn使用的凭据(用户名,密码)?
我想做这样的事情:
using (SvnClient svnClient = new SvnClient())
{
SomeFictitiousCredentialsClass credentials = svnClient.Authentication.FictitiousGetCachedCredentialsMethod();
// Call my code that performs svnmucc-like work here, passing username and password
// obtained from 'credentials' variable.
}
最佳答案
Sharpsvn没有可以为您提供Subversion凭据的api。它主要实现libsvn_client api,并且在此级别无法访问此数据。
当这些需要凭证时,SharpSvn会从子版本库获取回调。大多数情况下,内置密码存储无法通过身份验证。
如果您的svnmucc代码还使用Subversion API,则只需插入Subversion预定义的身份验证处理程序即可。
SharpSvn本身还没有svnmucc支持。 (有人谈论过有人喜欢将其添加到SharpSvn中,但最近我对此没有任何消息)