This is the manual migration procedure, there's also a script to automate the migration, see [[c4science/migration-script]]
= Migration from GIT =
1. Add a [[ https://c4science.ch/settings/panel/ssh/ | public ssh key ]] to your account (or a [[ https://c4science.ch/settings/panel/vcspassword/ | VCS password ]])
2. [[ c4science/simplerepo/ | Create repo in c4science ]]
3. Clone repo from other GIT (if you don't already have a local copy) and enter repo
```
git clone https://rezzonic@git.epfl.ch/repo/scitas-benchmarks.git
cd scitas-benchmarks
```
4. Switch the remote origin
```
git remote rename origin old-origin
git remote add origin ssh://git@c4science.ch:2222/diffusion/77/scitas-benchmarks.git
```
5. Push everything to c4science and set upstream to origin
```
git push --all --set-upstream origin
git push --tag
```
6. Wait until all the commits are parsed by phabricator to be available on the web interface
= Migration from SVN =
* You can either migrate from SVN to GIT (preferred), or SVN to SVN
== SVN to GIT ==
You can use the [[ https://github.com/nirvdrum/svn2git | svn2git ]] utility.
== SVN to SVN ==
- [[ c4science/simplerepo/ | Create a subversion repository ]]
- On the management page
- Activate the repository
- Activate "Allow Dangerous Changes"
- In your local computer, checkout the repository on svn.epfl.ch, go in the created directory
- Initialize and syncronize the repository with c4science using your new repository URL (change the <ID> and <NAME> parts)
```
svnsync init svn+ssh://git@c4science.ch/diffusion/<ID>/ https://svn.epfl.ch/svn/<NAME>
svnsync sync svn+ssh://git@c4science.ch/diffusion/<ID>/
```
- Deactivate Dangerous Changes
- You can now checkout the new URL on your machine
```
svn checkout svn+ssh://git@c4science.ch/diffusion/<ID>/ myrepo
```
= Service accounts =
If you are using //service accounts// for your git and svn repositories, you can either use ssh keys on c4science or you can [[ c4science/bot/ | ask for a bot user ]].