Hallcgit.jlab.org

From HallCWiki
Revision as of 11:05, 11 October 2012 by Saw (Talk | contribs) (First edit)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Hall C has established a server, hallcgit.jlab.org, to host Hall C software projects being managed with git. The server uses the gitolite package to administer git repositories and access to those repositories.

Viewing git repositories with the web

Repositories that have been marked by their owner as public, can be browsed at https://hallcweb.jlab.org/git/. This site, using the simple Gitweb interface, allows users to browse source code and changes and allows one to download tarballs of projects. It can not be used to anonymously clone a repository. To clone git repositories from hallcgit, one needs to establish access to hallcgit and request read or read/write access to the repositories of interest.

Obtaining access

In order obtain access to hallcgit, you need to give your public ssh key to the hallcgit maintainer, Steve Wood, saw@jlab.org. When sending the key, please also specify which software projects you wish to access.

As users often find themselves working from multiple machines, it is recommended to create a custom ssh key for hallcgit access. To do this, do:

 ssh-keygen -t dsa -f ~/.ssh/id_dsa_hallcgit

Supply the file ~/.ssh/id_dsa_hallcgit.pub to the hallcgit maintainer.

Then edit ~/.ssh/config, adding the following lines

 Host hallcgit
   Hostname hallcgit.jlab.org
   User git
   IdentityFile /home/YOURUSERNAME/.ssh/id_dsa_hallcgit

When constructing URL to use with git, use only "hallcgit", not "hallcgit.jlab.org". (E.g. "git@hallcgit:hcana.git")

To access hallcgit from a different computer, copy id_dsa_hallcgit and id_dsa_hallcgit.pub to the .ssh directory on the new computer and copy the new config lines to the .ssh/config file on that computer.

Creating personal repositories

Normally, a new git repository on hallcgit can only be created by the hallcgit maintainer. However, hallcgit users can request the ability to create "wildcard" repositories.