2010-10-12 47 views
5

这里的情况是: 一个人签出库,现在我要更新一些的文件夹。问题是他离开了,没有人知道密码。所以,我想用我自己的账户。我执行这个命令:不同帐户SVN更新(--username和--password忽略?)

svn up --username (my_user_name) --password (my_password) --no-auth-cache

SVN询问我的密码,SVN不接受它。它看起来像我的凭据被忽略,并使用原始凭证(签出的人)。我在/tmp中测试了我的帐户,并检查了结果,并且工作正常。

为什么SVN在更新时不接受我的凭据?

回答

5

试试这个

mv $HOME/.subversion $HOME/.subversion-old 
    cd <your working copy> 
    svn up --username <your username> 

这应该要求输入密码输入用户名

+0

尝试和结果是一样的。 – davidlt 2010-10-12 17:00:23

-1

我从来没有尝试过这一点,但它看起来像SVN一旦你签出一些内部存储的用户ID。我不知道在检查的时候可以覆盖。

为什么你不只是在服务器上改变前雇员的密码(他并不需要他的密码了;-))。然后用他的名字签入,并更改密码。无论如何,这可以说是比较干净的,因为那时签到会出现在他的名字下,而且这些更改是由他完成的。

0

获取所需的权限,并通过改变用户和组设置成为工作区的所有者:

chown -R user:group path/to/workspace/root/ 

再次尝试访问工作区使用您的凭据。

3

我有同样的问题,我发现,如果协议是HTTP/HTTPS此选项servers:global:http-library=serf可以解决这个问题。然后

你的命令是:

svn up --username (my_user_name) --password (my_password) --no-auth-cache \ 
     --config-option servers:global:http-library=serf 
+0

另一种使用serf http后端的方式是改变〜/ .subversion/servers:[global] http-library = serf – 2013-08-19 08:33:59

+0

它没有使用“--config-option servers:global:http-library = serf”部分(i得到了无法识别的选项“--config-option”错误) – loostro 2013-09-06 09:39:37