The aim of this article is collect the needed steps/tips (a little more that what's in DSA email) once you finally reach the state of DD :)

Initial Steps

So first go and update your information at https://db.debian.org/

Then, a really nice feature is using ssh key authentication, as written at https://db.debian.org/doc-mail.html and https://db.debian.org/password.html

Then update your DEBEMAIL shell variable, and all other configuration files where your previous email address was written (to name one, ~/.reportbugrc)

Alioth

Account migration

Start looking at [http://wiki.debian.org/Alioth/FAQ#head-a64d21a371754d31a0a3a868223ebc5ac8a8e2f4 this faq] and request a password for your new account.

Then "Request to join" all your previous teams (except collab-maint where all DD have write access by default). When you're done, ask the alioth admins to remove your unused -guest account.

VCS Update

If you have chosen to use a proper setup, there is not much to do here at all. You just edit your ~/.ssh/config file to replace the User entry for alioth to change it to read myuser instead of myuser-guest. The entry propably should look similar to this after your change:

Host alioth.debian.org svn.debian.org git.debian.org
User myuser

If you on the other hand have chosen to put the user into the checkout URL, feel encouraged to switch to using a single-point to store the username for the hosts instead of duplicating it loads of time, making it a maintenance hell.

SVN

I have checked out many packages with ssh+svn://<user>@svn.debian.org/..., so how I have to change that username. For svn you can use:

svn switch --relocate <current URL> <new URL>

so, just to automate it a little use this (to be run in the working dir):

URL=$(svn info | awk '/URL/{ print $2 }') ; svn switch --relocate $URL $(echo $URL | sed 's/myuser-guest@//')

that parse the URL from the svn info command and switch to a new one (you might need to change the sed command to adapt to your needs). A real example:

{{{$ svn info | grep URL URL: svn+ssh://morph-guest@svn.debian.org/svn/reportbug/trunk

$ URL=$(svn info | awk '/URL/{ print $2 }') ; svn switch --relocate $URL $(echo $URL | sed 's/morph-guest@//')

$ svn info | grep URL URL: svn+ssh://svn.debian.org/svn/reportbug/trunk}}}

GIT

* STILL TO DO *

but it would be some kind of play with git remote :)