Innhold
1???Registrere SSH-n?kkel
Dersom du ikke allerede er registrert Git-bruker m? SSH-n?kkelen din legges inn for Git-tjenesten. Dette er en manuell jobb som gj?res av USIT. Send den offentlige SSH-n?kkelen din til unix-drift@usit.uio.no for ? bli registrert p? Git-tjenesten.
2???Opprette nytt repository
Alle personlige Git-repoer ligger under stien:
u/<brukernavn>/<repo-navn>
For ? opprette er det bare ? klone repoet (eksempel for brukeren trondham):
$ git clone gitolite@git.uio.no:u/trondham/mittrepo Initialized empty Git repository in /tmp/mittrepo/.git/ Initialized empty Git repository in /var/lib/git/repos/u/trondham/mittrepo.git/ warning: You appear to have cloned an empty repository.
Lag s? innhold, og gj?r commit:
$ git add * $ git commit -m 'initial commit' [master (root-commit) 90de8c8] initial commit 2 files changed, 2 insertions(+), 0 deletions(-) create mode 100644 bar create mode 100644 foo
Til slutt gj?r push til upstream:
$ git push origin master Counting objects: 4, done. Delta compression using up to 4 threads. Compressing objects: 100% (2/2), done. Writing objects: 100% (4/4), 262 bytes, done. Total 4 (delta 0), reused 0 (delta 0) remote: sed: can't read ./description: No such file or directory To gitolite@git.uio.no:u/trondham/mittrepo * [new branch] master -> master
Etter dette brukes repoet u/trondham/mittrepo p? vanlig m?te.
3???Kommandoer mot Git-tjenesten
Git-tjenesten st?tter noen f? kommandoer som brukere kan gj?re via SSH mot gitolite@git.uio.no:
ssh gitolite@git.uio.no <kommando> [argumenter]
Eksempel:
$ ssh gitolite@git.uio.no help hello trondham, this is gitolite3 3.3-1.el6 on git 1.7.1 list of remote commands available: desc help info perms writable
Hver av disse kommandoene har egen hjelp. Eksempel:
$ ssh gitolite@git.uio.no desc -h Usage: ssh git@host desc <repo> ssh git@host desc <repo> <description string> Show or set description for user-created ("wild") repo.
3.1???Endre description
Beskrivelse for personlige Git-repoer brukes kun ifm. presentasjon p? web (http://git.uio.no/). Du kan endre beskrivelse selv, dette gj?res med kommandoen desc. Eksempel:
$ ssh gitolite@git.uio.no desc u/trondham/mittrepo 'Trond sitt test-repo'
3.2???Endre tilgang
Man kan gi andre registrerte brukere (se registrere ssh-n?kkel), samt de spesielle brukerne "daemon" og "gitweb", tilgang til sitt personlige repo med kommandoen perms.
Eksempel: Gi tilgang til brukerne daemon og gitweb, slik at repoet blir synlig p? web, samt tilgjengelig for hele verden via Git-protokollen:
$ ssh gitolite@git.uio.no perms u/trondham/mittrepo + READERS daemon $ ssh gitolite@git.uio.no perms u/trondham/mittrepo + READERS gitweb
Eksempel: Gi lese- og skrivetilgang til en annen bruker:
$ ssh gitolite@git.uio.no perms u/trondham/mittrepo + READERS staalej $ ssh gitolite@git.uio.no perms u/trondham/mittrepo + WRITERS staalej
Eksempel: Fjerne skrivetilgangen:
$ ssh gitolite@git.uio.no perms u/trondham/mittrepo - WRITERS staalej
Eksempel: Liste opp tilganger:
$ ssh gitolite@git.uio.no perms u/trondham/mittrepo -l READERS daemon READERS gitweb READERS staalej WRITERS staalej
3.3???Stenge Git-repo
Man kan midlertidig stenge push til et repo med kommandoen writable. Eksempel:
$ ssh gitolite@git.uio.no writable u/trondham/mittrepo off 'ligg unna'
Ved fors?k p? push til repoet vil man da f? beskjeden man spesifiserte:
$ git push FATAL: ligg unna fatal: The remote end hung up unexpectedly
Repoet ?pnes igjen slik:
$ ssh gitolite@git.uio.no writable u/trondham/mittrepo on
3.4???Liste opp dine repoer
Du kan f? en liste over repoer du har tilgang til med kommandoen info. Eksempel:
$ ssh gitolite@git.uio.no info hello trondham, this is gitolite@git-prod01 running gitolite3 3.3-1.el6 on git 1.7.1 C u/CREATOR/..* R W check_linux_bonding R W check_openmanage R W gitolite-admin R W testing R W u/trondham/mittrepo Please see http://www.uio.no/tjenester/it/maskin/filer/versjonskontroll/git.html for more help
3.5???Slette repo
For ? f? slettet et repo som ikke lenger er i bruk, kontakt unix-drift@usit.uio.no og be om ? f? det slettet.