{"id":368,"date":"2011-08-10T23:46:37","date_gmt":"2011-08-10T21:46:37","guid":{"rendered":"http:\/\/grummfy.be\/blog\/?p=368"},"modified":"2012-05-26T21:53:51","modified_gmt":"2012-05-26T19:53:51","slug":"git-gitolite-et-mutualise-ovh","status":"publish","type":"post","link":"https:\/\/grummfy.be\/blog\/368","title":{"rendered":"Git, gitolite et mutualis\u00e9 OVH"},"content":{"rendered":"<p>\/!\\ pour la version 3 pensez \u00e0 lire <a href=\"http:\/\/grummfy.be\/blog\/396\" title=\"Git, gitolite et mutualis\u00e9 OVH \u2013 gitolite v3\">ceci<\/a>.<\/p>\n<p>Hello,<br \/>\nSur les mutualis\u00e9s OVH, la version fournie de git est plus qu\u2019out-of-date : version 1.4.4. Ceci signifie impossibilit\u00e9 d&rsquo;install\u00e9 des outils tels que gitolite ou inferno. Ce billet est l&rsquo;occasion d&rsquo;un guide pour installer gitolite.<\/p>\n<p>Le guide suivant a \u00e9t\u00e9 r\u00e9dig\u00e9 sur un compte OVH pro, donc avec acc\u00e8s un ssh. En utilisant git 1.7.6 et gitolite 2.0.3. L&rsquo;ensemble ex\u00e9cuter sur une machine Linux.<\/p>\n<h2>T\u00e9l\u00e9chargement<\/h2>\n<p>La premi\u00e8re \u00e9tape, consiste a r\u00e9cup\u00e9rer les diff\u00e9rentes archives n\u00e9cessaires, a savoir git et gitolite.<\/p>\n<p>Pour git, il vous suffit de prendre la derni\u00e8re version http:\/\/git-scm.com\/download.<\/p>\n<p>Pour gitolite, il suffit d&rsquo;utiliser git!<\/p>\n<pre>git clone https:\/\/github.com\/sitaramc\/gitolite.git<\/pre>\n<h2>Pr\u00e9paration de l&rsquo;environnement<\/h2>\n<p>Nous allons installer les ex\u00e9cutables de git dans ~\/opt\/bin. De ce fait ajoutons le path a l&rsquo;utilisateur ssh.<br \/>\nOuvrir ~\/.bash_profile et modifier le path. Pour ce faire ajouter, avant le export :<\/p>\n<pre>PATH=$HOME\/opt\/bin:$PATH<\/pre>\n<h2>Installation de git<\/h2>\n<p>Uploader votre archive dans un dossier (ici ~\/opt\/src\/). En mode console par ssh, donc sur le serveur, ouvrir l&rsquo;archive et compiler les sources.<\/p>\n<pre>tar -xvzf git-1.7.6.tar.gz\r\ncd git-1.7.6\r\n.\/configure --prefix=$HOME\/opt --without-tcltk\r\nmake\r\nmake install<\/pre>\n<p>Une fois compil\u00e9, les ex\u00e9cutables seront pr\u00e9sents dans ~\/opt\/bin. Pour v\u00e9rifier, que tout est bien en place :<\/p>\n<pre>git --version<\/pre>\n<h2>Gitolite<\/h2>\n<p>Il faut se rendre dans le r\u00e9pertoire du clone du repository. <strong>Tout s&rsquo;ex\u00e9cute uniquement sur la machine cliente (donc pas chez ovh)<\/strong>. Si l&rsquo;utilisateur est \u00ab\u00a0toto\u00a0\u00bb, l&rsquo;host \u00ab\u00a0tata.com\u00a0\u00bb et le futur administrateur \u00ab\u00a0moiadmin\u00a0\u00bb<\/p>\n<pre>.\/src\/gl-easy-install toto tata.com moiadmin<\/pre>\n<p>Il suffit de faire enter. Dans tous les cas (mise \u00e0 jour du script compris!), le fait de r\u00e9executer la commande permet de rectifier les erreurs \u00e9ventuelles. \u00c0 l&rsquo;\u00e9tape de l&rsquo;\u00e9dition du fichier de configuration, il faut modifier la variable $GIT_PATH pour quelle pointe vers le r\u00e9pertoire contenant notre git. Dans notre cas :<\/p>\n<pre>$GIT_PATH = $ENV{HOME} . \"\/opt\/bin\/\";<\/pre>\n<h2>Configuration de Gitolite<\/h2>\n<p>La configuration de gitolite est simple et s&rsquo;ex\u00e9cute avec &#8230; git! En principe, un r\u00e9pertoire reprenant la config a \u00e9t\u00e9 cr\u00e9\u00e9 sur votre home dans ~\/gitolite-admin, dans le cas contraire, il vous suffit de faire<\/p>\n<pre>git clone gitolite:gitolite-admin.git<\/pre>\n<p>Pour ajouter des clefs ssh, il suffit de les mettre dans le dossier keys. Pour ce qui est de la config, il vous suffit d&rsquo;\u00e9diter le fichier gitolite.conf et puis de faire<\/p>\n<pre>git add conf\/gitolite.conf\r\ngit commit -m 'update config'\r\ngit push<\/pre>\n<p>Et c&rsquo;est tout!<\/p>\n<p>Sources :<br \/>\n<a href=\"http:\/\/forum.ovh.com\/showthread.php?t=71543\" target=\"_blank\">http:\/\/forum.ovh.com\/showthread.php?t=71543<\/a><br \/>\n<a href=\"http:\/\/blog.lyrixx.info\/admin-sys\/installer-gitolite-sur-une-machine-debian-5\/\" target=\"_blank\">http:\/\/blog.lyrixx.info\/admin-sys\/installer-gitolite-sur-une-machine-debian-5\/<\/a><br \/>\n<a href=\"http:\/\/sitaramc.github.com\/gitolite\/doc\/gitolite.rc.html\" target=\"_blank\">http:\/\/sitaramc.github.com\/gitolite\/doc\/gitolite.rc.html<\/a><br \/>\n<a href=\"http:\/\/sitaramc.github.com\/gitolite\/doc\/gitolite.conf.html#_groups\" target=\"_blank\">http:\/\/sitaramc.github.com\/gitolite\/doc\/gitolite.conf.html#_groups<\/a><\/p>\n<p>Pour vos interfaces web, trois solutions correctes :<br \/>\n<a href=\"http:\/\/hjemli.net\/git\/cgit\/\" target=\"_blank\">CGit<\/a><br \/>\n<a href=\"http:\/\/viewgit.sourceforge.net\/\" target=\"_blank\">View Git<\/a><br \/>\n<a href=\"http:\/\/projects.ceondo.com\/p\/indefero\/\" target=\"_blank\">Indefero<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Pouvoir utilis\u00e9 gitolite sur un h\u00e9bergement mutualis\u00e9 OVH.<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"webmentions_disabled_pings":false,"webmentions_disabled":false,"footnotes":""},"categories":[9,4],"tags":[107,106,24,28],"class_list":["post-368","post","type-post","status-publish","format-standard","hentry","category-dev","category-general","tag-git","tag-ovh","tag-programmation","tag-trucs-et-astuces"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts\/368","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/comments?post=368"}],"version-history":[{"count":13,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts\/368\/revisions"}],"predecessor-version":[{"id":399,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/posts\/368\/revisions\/399"}],"wp:attachment":[{"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/media?parent=368"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/categories?post=368"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/grummfy.be\/blog\/wp-json\/wp\/v2\/tags?post=368"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}