Utiliser gerrit

Page traduite par la communauté

Configuration du compte

  • Serveur Gerrit : https://review.jami.net

  • Documentation utilisateur : https://review.jami.net/Documentation/intro-user.html

  • Projets Jami sur Gerrit : https://review.jami.net/#/admin/projects/

  1. Connectez-vous avec votre compte google, github ou git.jami.net.

  2. Vous aurez également besoin de [télécharger une clé SSH] (https://review.jami.net/settings/#SSHKeys) pour être en mesure de livrer des changements pour révision.

  3. N’oubliez pas de choisir un nom d’utilisateur.

  4. Enfin, l’adresse électronique spécifiée dans votre configuration git doit correspondre à l’adresse électronique enregistrée dans votre compte Gerrit.

Note pour les employés de Savoir-faire Linux : veuillez continuer à utiliser votre adresse électronique @savoirfairelinux.com..

Pour connaître votre configuration Git

git config --list

Pour tester votre accès SSH

Pour vérifier que votre accès SSH est correctement configuré, exécutez la commande suivante :

ssh -p 29420 <username>@review.jami.net

est votre nom d’utilisateur Gerrit, que vous devriez avoir défini lors de la création du compte. Si ce n’est pas le cas, vous pouvez le faire ici.

Si votre accès est accordé, vous devriez voir un message comme :

**** Bienvenue à Gerrit Code Review ****

Bonjour, vous vous êtes connecté avec succès via SSH.

  Malheureusement, les shells interactifs sont désactivés.
  Pour cloner un dépôt Git hébergé, utilisez :

  git clone ssh://<username>@review.jami.net:29420/REPOSITORY_NAME.git

Connexion à review.jami.net fermée.

Configuration de Git

Gerrit est le dépôt git officiel.

Pour mettre à jour la configuration

Vous devez mettre à jour vos informations distantes pour utiliser maintenant le dépôt Gerrit. Pour ce faire, mettez à jour votre url d’origine :

git remote set-url origin ssh://<username>@review.jami.net:29420/<project_name>

Remplacez <nom_du_projet> par le bon projet (exemple : jami-daemon)

Ou clonez le dépôt existant si vous voulez commencer à zéro.

Pousser par défaut dans refs/for/master

Vous pouvez configurer git pour qu’il crée automatiquement une révision lorsqu’un changement est poussé.

git config remote.origin.push HEAD:refs/for/master

Créer la révision

En poussant vers cette branche magique, une révision sera automatiquement créée sur Gerrit.

git push origin HEAD:refs/for/master

Si vous avez configuré la branche par défaut à refs/for/master comme décrit ci-dessus, il suffit de faire

git push

Si HEAD pointe actuellement vers la branche avec les commits que vous souhaitez pousser. Idéalement, vous devriez travailler dans une branche de fonctionnalité/bug pour le problème en question. Vous pouvez alors faire :

git push origin <bugfix_branchname>:refs/for/master

Si c’est la première fois que vous poussez, il vous sera demandé d’installer un Hook post-commit pour insérer un Change-ID dans votre message de commit. Gerrit en a besoin pour suivre les patchs et rejettera les poussées jusqu’à ce que vous l’installiez. Copiez-collez simplement la commande pour installer le hook comme indiqué par Gerrit, et modifiez vos commits.

Pour pousser un patch privé

Vous pouvez pousser un travail en cours (a.k.a draft) en le poussant vers refs/for/master%private.

Par exemple, vous pouvez vouloir un remote “privé” pour pousser vers ; ouvrez <projet_dir>/.git/config et ajoutez :

[remote "private"]

    url = ssh://<username>@review.jami.net:29420/jami-daemon
    push = HEAD:refs/for/master%private

Ensuite :

git push private

Les versions privées fonctionnent de la même manière que les patchsets, sauf qu’elles ne sont pas visibles par les autres par défaut et ne déclenchent pas de builds Jenkins. Un brouillon peut ensuite être partagé ou publié.