SVN change username
I found a lot of examples on how to change the username for specific revisions and so on.
But what I need is this: I did a checkout with the authentication credentials of a workmate and need to change it to my credentials for future commits.
I cannot just checkout with my credentials due to the many changes that have been done already...
Anyone familiar with this?
Solution 1:
You can change the user with
-
Subversion 1.6 and earlier:
svn switch --relocate protocol://currentUser@server/path protocol://newUser@server/path
-
Subversion 1.7 and later:
svn relocate protocol://currentUser@server/path protocol://newUser@server/path
To find out what protocol://currentUser@server/path
is, run
svn info
in your working copy.
Solution 2:
The easiest way to do this is to simply use the --username option on your next checkout or commit. For example:
svn commit --username newUser
or
svn co --username newUser
It will then be cached and will be used as the default username for future commands.
See also: In Subversion can I be a user other than my login name?
Solution 3:
I’ve had the exact same problem and found the solution in Where does SVN client store user authentication data?:
-
cd
to~/.subversion/auth/
. - Do
fgrep -l <yourworkmatesusernameORtheserverurl> */*
. - Delete the file found.
- The next operation on the repository will ask you again for username/password information.
(For Windows, the steps are analogous; the auth
directory is in %APPDATA%\Subversion\
).
Note that this will only work for SVN access schemes where the user name is part of the server login so it’s no use for repositories accessed using file://
.
Solution 4:
The command, that can be executed:
svn up --username newUsername
Works perfectly ;)
P.S. Just a hint: "--username" option can be executed on any "svn" command, not just update.
Solution 5:
If your protocol is http and you are using Subversion 1.7, you can switch the user at anytime by simply using the global --username option on any command.
When Ingo's method didn't work for me, this was what I found that worked.