How to get commit access to the deegree SVN
1. Approvement of the PSC
Any individual that wishes to be an active contributor to deegree by checking in into the deegree SVN (may it be documentation, may it be source code) will need to contact the project steering committee (PSC). The PSC will then decide wether or not to grant commit rights to this individual. More details on this process may be found at structures and procedures and in the deegree committer guidelines.
Once the PSC grants you commit rights for deegree SVN, you will need to follow the next few steps to be able to actually add new things to the SVN.
2. Account for Wald
"Wald" is the German word for "forest". It is also the name of a project management software hosted by Intevation. One of the hosted software projects is deegree.
This account is necessary not only for active commiters to the deegree code base. If you wish to file an issue in the deegree issue trackers, you need to be logged in as well.
3. Request To Join
As soon as you have logged in to "Wald", you need to file a request to join. This request will be sent to the project administrator, who will check back with the PSC before accepting you into the developer's list. "Developer" should rather be read as "committer".
Parallel to this request to join you can go on with the next step, as this does not depend on the former.
4. Create SSH key
Every committer needs to authenticate each SVN commit with their SSH key. Therefore you will need to create and upload your personal public SSH key. The key algorithm should be RSA, so make sure your key is an RSA key.
To get an SSH key, you can easily use the command line tool ssh-keygen. The usage is described below. When promted for the password, we would like to ask you to please enter a password. Technically this is optional, but if you omit the passphrase, then anyone who happens to get hold of your private key file can login as you.
In case you alreade have an SSH key, you should make sure to choose a differnet location for this new key, as otherwise the old one might be overwritten and thus lost.
myUserName@gray:~$ ssh-keygen Generating public/private rsa key pair. Enter file in which to save the key (/home/myUserName/.ssh/id_rsa): Created directory '/home/myUserName/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /home/myUserName/.ssh/id_rsa. Your public key has been saved in /home/myUserName/.ssh/id_rsa.pub. The key fingerprint is: 52:b1:78:cb:7b:50:4a:d7:e1:91:c2:e8:6b:4b:11:4b myUserName@myComputer The key's randomart image is: +--[ RSA 2048]----+ | o++.. o | | ..=o+ o + | | .o o * | | .. . + | |. .. o S | |+E. . | |++ | |o | | | +-----------------+
The above command will create both a public and a private key. If you did not set a different location, the files will be stored at /home/myUserName/.ssh/.
The private key should always be kept secret. The public key needs to be uploaded to your Wald account.
5. Upload SSH key
When you are logged in at Wald you can go to "My page" and click on "Account Maintenance". At the bottom of that page you will find the "Shell Account Information". Here you are able to upload and publish your public SSH key.
Please note: It takes about an hour for your changes to take effect.
If you should ever need to update your ssh key (in case you forgot your password, or because your secret private key was stolen), you can simply delete the existing key and upload a new public key. In this case you will need to wait for about an hour again, before the changes take effect.
6. Setting up your development environment
After successfully following all the steps described above, you should also have a look at some other wiki pages with information on setting up and configuration of your development environment. Although the description is focused on Eclipse, you may certainly use an IDE of your choice. Another important page to read is HowToAddCopyrightHeaders.
There are some special settings for SSH-access to SVN not described at the above mentioned pages. These info are only important to people with SVN write access. Therefore they are provided here: