我正在使用git-svn管理几个工作项目,发现无论我执行什么操作,都会提示我输入Svn密码。对于某些操作,我会被提示多次(可能是因为幕后有多个动作在进行)。例如,当克隆一个存储库时,在克隆实际开始之前,我会被提示5次。
直接使用Svn的项目不会出现这种情况。这是否是预期的行为?是否有任何方法可以缓存我的凭据?
谢谢。
最终我不得不删除auth目录,并允许Subversion为我重建它。似乎没有其他方法可行。对于那些不知道的人,auth目录位于~/.subversion(Mac/Linux)中。
svn
可以正常工作,但git svn
无法使用存储的凭据,并且一直提示重新输入密码。git svn
。如果git svn
是用于在钥匙串中存储密码的程序,则权限已正确设置。一旦git svn
被用于在钥匙串中创建条目,那么就可以使用普通的svn
,并允许访问由git svn
创建的密钥,在这一点上,它们都可以无问题地使用仓库,而不需要我一直输入密码。git svn
将不获得权限。Authentication realm: <http://subversion.xxx.com:80> Enter your user name & password for zzz SVN
),然后使用 git-svn 进行设置就像你描述的那样: - Nuthatch# $ svn update --username 'user2' --password 'password'
# user1@domain.com's password:
我有类似的问题。最初我在远程 CentOS 服务器上尝试获取所有远程 SVN 分支,将它们推送到干净的源作为真正的 Git 分支,以进行从 SVN 到 Git 的硬切换:
for remote in `git branch -r` ; do git checkout $remote; git pull; done
在大约240个远程分支的情况下(我不可能为每个拉取输入我的密码),我最终做的是将repo通过scp传输到我的本地机器(一台Mac),并启用keychain来处理密码缓存。我将所有svn提交都拉到了本地,然后将我的repo复制回远程机器。