Sites


KDE guide de développement

Using Git for KDE Development

Utiliser Git pour le développement KDE

Git est un système de contrôle de versions gratuit et « open source » conçu pour tout manipuler, depuis de petits projets jusqu'à de très gros projets avec rapidité et efficacité. Il offre de nombreux outils pour savoir où vous en êtes au fur et à mesure lorsque vous modifiez des fichiers, ainsi que pour fusionner vos modifications avec celles effectuées par d'autres développeurs.

Vous pouvez en savoir plus sur git (et le télécharger si nécessaire) à l'adresse http://git-scm.com.

Bases de Git

Il existe plusieurs niveaux auxquels vos modifications peuvent résider dans git. Vous devrez passer par toutes les étapes avec soin afin d'enregistrer les changements correctement. Une séquence typique d'activités de « git » commence par le clonage d'un dépôt distant. À présent, vous disposez d'une copie complète de ce que possède le développeur originel. Puis vous devrez procéder comme suit :

  1. Créer et modifier des fichiers.
  2. Exécuter « git add » pour avertir « git » à propos de tous nouveaux fichiers que vous avez créés ou de fichiers que vous venez de modifier. Les fichiers comportant des changements se trouvent dans un état intermédiaire appelé « zone de transit » (staging area), mais pas encore dans un quelconque dépôt.
  3. Exécuter « git commit » pour enregistrer vos changements dans votre propre dépôt local
Nous présenterons des exemples de tous ces aspects plus loin dans ce chapitre.

Au lieu d'avoir à vous rappeler et à saisir les différentes adresses de « git » complètes pour rapatrier des données depuis le serveur (pulling) et les envoyer vers le serveur (pushing), nous vous recommandons d'ajouter manuellement les lignes suivantes à votre configuration utilisateur de Git (~/.gitconfig) :

[url "git://anongit.kde.org/"]
    insteadOf = kde:
[url "git@git.kde.org:"] 
    pushInsteadOf = kde: 

Cloner des dépôts

Après avoir défini votre « ~/.gitconfig » comme affiché dans la section précédente, vous devez cloner les dépôts source à l'aide de la commande suivante :

git clone kde:nom_du_projet

nom_du_projet est le nom du projet auquel vous souhaitez contribuer. Par exemple, pour soumettre un correctif pour « kdelibs », démarrez par la commande :

git clone kde:kdelibs

Rapatrier des changements

Si vous avez déjà un dépôt « git » que vous devez mettre à jour avec les nouveaux changements depuis le source original, exécutez la commande suivante :

git pull 

Travailler avec les branches

Git est un système de contrôle de révisions très puissant qui prend en charge le concept des branches. Afin de développer une nouvelle fonctionnalité pour un projet de la plate-forme de développement de KDE, il est préférable d'utiliser une branche séparée pour le développement d'une fonctionnalité. Vous pouvez extraire une nouvelle branche grâce à la commande suivante :

git checkout -b nom_de_la_fonctionnalité

par exemple :

git checkout -b maFonctionnalité

Plus tard, vous pourrez basculer entre des branches multiples à l'aide de la commande d'extraction de git :

git checkout maFonctionnalité

Chaque projet « git » comprend une branche appelée « maîtresse » (master), que les propriétaires du dépôt considèrent comme la branche principale. Habituellement, rien ne vient s'ajouter à cette branche jusqu'à ce qu'elle soit testée dans divers environnements et que les chefs de projets soient sûrs qu'elle est à la fois robuste et utile.  

Suivre les branches distantes 

Il existe deux types de branches dans « git », locales et distantes. Les branches distantes sont celles qui se trouvent dans le dépôt distant. Vous pouvez également suivre les branches distantes via la commande suivante :

git checkout --track dépôt_distant:branche_distante

Par exemple, pour extraire la banche 4.7 de KDE, utilisez : git checkout --track origin:KDE/4.7

Valider votre travail

Avant d'envoyer quoi que ce soit dans la base de code de KDE, vous avez besoin d'une identité et d'un compte de développeur KDE. Veuillez vous connecter sur http://identity.kde.org/ pour enregistrer votre compte. Votre nom de compte sera presque toujours votre nom patronymique ; ne tentez pas de contourner cette règle. Les développeurs très expérimentés peuvent obtenir des comptes comportant des droits de validation (commit), mais ce point est en dehors de la portée de ce livre.

Afin de générer un « diff » (affichage des différences) de vos changements et de les réviser, lancez la commande suivante :

git diff

Vous pouvez rediriger cette sortie dans un correctif à l'aide de :

git diff > mon_correctif.patch 

Pour pouvoir valider votre travail, il vous faut d'abord ajouter les fichiers que vous avez modifiés dans la zone de transit grâce à la commande suivante :

git add nomdeFichier1 nomdeFichier2

Afin de valider vos changements dans votre dépôt local, utilisez la commande suivante :

git commit

Cette opération ouvre un éditeur de texte où vous pouvez saisir un message de validation décrivant vos modifications.

Soumettre vos changements dans l'arbre principal

Vous pouvez soumettre vos correctifs au « Comité de Révision de KDE » sur https://git.reviewboard.kde.org/. Connectez-vous à l'aide de votre compte d'identité KDE et proposez-y un correctif relatif à un projet.

Il est également possible d'envoyer directement des correctifs au comité de révision via une révision postérieure. La procédure est exposée sur :

http://community.kde.org/Sysadmin/GitKdeOrgManual#Using_Review_Board_and_post-review

Dépannage

Pour tout problème lié à « git » et à la plate-forme de développement de KDE, vous pouvez chercher de l'aide sur l'un des canaux suivants sur irc.freenode.net.

  • #kde-sysadmin
  • #kde-git

Vous pouvez en savoir plus sur la plate-forme de développement de KDE à l'aide de « git » sur http://techbase.kde.org/Development/Git.

Il y a une erreur de communication avec le serveur Booktype. Nous ne savons pas actuellement où est le problème.

Vous devriez rafraîchir la page.