Git Hosting

From CSCWiki
Revision as of 17:34, 19 June 2021 by R389li (talk | contribs)
Jump to navigation Jump to search

We have a gitea[1] instance running off of caffeine. You can sign in via LDAP to the web interface. Projects used by CSC as a whole are owned by the public[2] organization.

Creating a public project

  1. Make sure you part of the git group. If not, add yourself to the group via ceo. Note that it may take a while until the servers synchronize with LDAP. Use the groups command to check if you part of the git group yet.
  2. Login to caffeine and run the following:
    become_club git
    cd /srv/git/public
    git init --bare projectname.git
    chmod -R g+x projectname.git
    
  3. On any other CSC machine, you can clone the repo by running the following:
    git clone /srv/git/public/projectname.git
    
  4. On a non-CSC machine, you can clone the repo by running the following:
    git clone username@caffeine.csclub.uwaterloo.ca:/srv/git/public/projectname.git
    

    If you wish to push an existing repo to an empty repo on the server, run the following:

    git remote add csc username@caffeine.csclub.uwaterloo.ca:/srv/git/public/projectname.git
    git push csc branchname
    

Creating a personal project

On caffeine, run become_club git and create the directory /srv/git/username. Login to aspartame and run, as root, chown username /srv/git/username. As your regular user, you can now create subdirectories under /srv/git/username using git init --bare projectname.git.

See the previous section for instructions on how to clone/push to your repo.