Difference between revisions of "GitServerSetup"

From Openembedded.org
Jump to: navigation, search
(.net -> .org)
(Undo revision 3290 by Yjytalamago (Talk))

Latest revision as of 07:50, 24 November 2010


[edit] Git Service Overview

Our git services are hosted on git.openembedded.org. There is a user called git and the repositories are located within /home/git/repositories. There is one repository for managing gitosis itself and currently one called openembedded.git with our metadata. git, webgit and gitosis are installed as debian packages, /etc/gitweb.con is pointing to /home/git/repositories. git-daemon is running as a serv the service configuration can be found in /var/services/git-daemon/run and it points to /home/git/repositories as configuration as well.

[edit] Service Infrastructure

[edit] gitosis

Installed with debian. Clone :gitosis-admin if you are part of the admin team

[edit] gitweb

/etc/gitweb.conf, it will list repositories from /home/git/repositories that have the gitweb flag in the object dir. This is the case for openembedded.git

[edit] git-daemon

It is running as runsv service. This means there is a /var/run/service/git-daemon/ directory and inside the run file is the command of git-daemon. As basepath it is pointing to /home/git/repositores. Everything with a special flag inside the repository will be exported via git-daemon. This is the case for the openembedded.git repository

[edit] Managing and Troubleshooting

[edit] Adding new keys

You will need admin rights. Then you can git-clone git@git.openembedded.org:gitosis-admin. You can add a key to keydir. Use name.pub for the key, then you can add name to the gitosis.conf. Commit your change and then git-push and the guy is able to push afterwards.

[edit] How the commit mails and ciabot work

In the openembedded.git repository there is the activated "update" hook. At the end of this script git-notify in /home/git is called. git-notify was copied from the wine project at a certain date, see the top of the file.

[edit] Troubleshooting

Add loglevel = DEBUG below [gitosis] (2nd line). Then you get more output when login fails or no permissions are given.

Personal tools

OE services