- Is it possible to modify GetComponents to ask for both the username
and the password when the login fails, instead of just the password as is currently done?
Possibly. Which repository is doing that? I believe all the modules in the Einstein Toolkit use either svn or git now, neither of which actually do any authentication when GetComponents is prompting you for your username. Unfortunately I don't know of a good way around this, svn does not verify your credentials until you try to commit to the repository (assuming you are using a public repository), and git will suggest the username included in the AUTH_URL which shouldn't be changed. Additionally for svn, I'm pretty sure that if you input the wrong password it will prompt for your username before asking for a password again. I forget how cvs login works, so perhaps that could be causing issues.
- Where are the login credentials stored? Is it all handled by SVN?
i.e. (on Linux), the credentials are stored in $HOME/.subversion/ auth? Deleting this directory didn't seem to help.
A list of usernames and URLs is stored in $HOME/.crl/users. svn, cvs, etc. handle all the password issues. GetComponents also provides a --reset-authentication option, which will delete the user list, but if you just want to delete one URL you have to do that manually for now.
One problem I can see is if you are using a private svn repository, and you enter the incorrect username when you are prompted by GetComponents. In this case, svn will likely end up prompting you again for your username, which will bypass GetComponents. This will in turn break any subsequent checkouts, but not updates (we assume that svn has all the necessary info to update a repository), processed by GetComponents.
If you can give me some more specifics about which repository or vcs is having issues, we might be able to find a workaround.
Eric