Repository creation¶
For users¶
Creation of repositories for projects on our site is quite simple and consists of 4 steps:
- Contact one of our administrators and send him following info:
- Your redmine login;
- Project for which you want to create repo;
- Type of repo.
- Get as answer:
- Your server login;
- Your temporary password;
- Path to project's repo at server.
- Add received info at project settings, "Repository" tab.
Subversion access¶
console¶
svn co svn+ssh://<username>@osll.spb.ru/svn/<projectname>
eclipse¶
- Add following upate sites:
- Install following plugins:
- Subversive SVN Connectors
- Subversive SVN Team Provider
- SVNKit Implementation
- Import the project through Import->SVN->Project from SVN
- URL: svn+ssh://<user name>@osll.spb.ru/var/svnroot/<project name>
- Enter login/password
For admins¶
Subversion¶
In theory all must be created automatically
GIT¶
Git repo may be created this way (repo-name is the name of repo, repo-group is the name of group that will commit to repo):
# cd /var/gitroot # git init --shared=group # mv .git <repo-name>.git # chown -R :<repo-group> <repo-name>.git # chmod +x <repo-name>.git/hooks/post-update edit <repo-name>.git/config -- set bare=true , delete logallrefupdates=true edit <repo-name>.git/description -- set description visible through web interface edit <repo-name>.git/cloneurl -- replace <repo> tag with repo name
Anyway, user cannot clone empty repo, so first she must create and populate her local repo.
$ cd <project-path> $ git init $ git add . $ git commit -a -m "<some sane comment>"
Then it may be pushed to osll.spb.ru:
$ git push ssh://osll.spb.ru/var/gitroot/<repo-name>.git master
Git repositories may be viewed at http://osll.spb.ru/git
To clone existing repository use URL at repository web page at http://osll.spb.ru/git
Usually it will be one of the following:
- git://osll.spb.ru/<repo-name>.git
- http://osll.spb.ru/<repo-name>.git
- ssh://osll.spb.ru/var/gitroot/<repo-name>.git
Converting Subversion repository => git repository¶
$ git-svn clone --stdlayout <url>/ /tmp/git-temp $ git clone --bare /tmp/git-temp /var/gitroot/<repo-name>.git $ rm -rf /tmp/git-temp