logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
doc:mentors:git-buildpackage [01/03/2014 09:04]
captnfab [Utilisations]
doc:mentors:git-buildpackage [28/09/2015 18:51] (Version actuelle)
milou [Maintenir son paquet avec git-buildpackage]
Ligne 4: Ligne 4:
   * Niveau requis : {{tag>​avisé}}   * Niveau requis : {{tag>​avisé}}
   * Commentaires : //Pour maintenir vos paquets Debian sous git avec git-buildpackage. //   * Commentaires : //Pour maintenir vos paquets Debian sous git avec git-buildpackage. //
-  * À savoir : [[:​doc:​mentors|Contribuer à Debian]] :-) +  * À savoir : [[:doc:mentors:​mentors|Contribuer à Debian]] :-) 
-  * Suivi : {{tag>en-chantier ​à-tester}} +  * Suivi : {{tag>​à-tester}} 
-    * Création par **captnfab** 28/​02/​2014 +    * Création par [[user>captnfab]] 28/​02/​2014 
-    * Testé par <...> le <​...> ​FIXME +    * Testé par <...> le <...>  
-  * Commentaires sur le forum : [[url Lien vers le forum concernant ce tuto]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) FIXME +  * Commentaires sur le forum : [[https://​debian-facile.org/​topic-8552-wiki-mentors-maintenir-ses-paquets-debian-avec-git-buildpackage-page-1.html ​ici]] ((N'​hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
 **Nota :** **Nota :**
  
Ligne 29: Ligne 28:
 ==== Configuration de Git ==== ==== Configuration de Git ====
  
-<code user>git config --global user.name "Votre Nom" +<code user>git config --global user.name "Votre Nom"</​code>​ 
-git config --global user.email votre@adresse-email.org</​code>​+<code user>git config --global user.email votre@adresse-email.org</​code>​
  
 Si vous avez une clé GPG FIXME : Si vous avez une clé GPG FIXME :
Ligne 73: Ligne 72:
 ===== Utilisations ===== ===== Utilisations =====
  
-FIXME+==== Gérer les patchs via une branche ''​patch-queue''​ ====
  
-==== Mettre ​à jour la branche de patchs ​====+Pour gérer les patchs de debian/​patchs,​ on peut utiliser une branche git. 
 +  *  Cela nous permet pour chaque branche //foo// d'​avoir la branche non-patchée (//foo//) et la branche patchée (//​patch-queue/​foo//​) 
 +  * Un commit dans la //​patch-queue//​ correspond exactement ​à un patch dans ''​debian/​patches/''​ 
 +  * Les patchs peuvent facilement être supprimés, ou ajoutés en modifiant ​la branche ​//​patch-queue//​ (et en évitant ​de se tromper en utilisant //quilt add//, //​dpatch-edit-patch//,​ //​cdbs-edit-patch//,​ etc.) 
 +  * Les patchs ​peuvent facilement être portés sur les nouvelles versions grâce à ''​git rebase''​ sur la branche //​patch-queue//​ (les patchs appliqués par //​upstream//​ sont automatiquement détectés). 
 +  * Les patchs générés dans ''​debian/​patches/''​ ont toutes les informations nécessaires pour être envoyés à //​upstream//​.
  
-=== Si elle n'​existe pas ===+Inconvénient :​ 
 +  * Pas d'​historique sur la branche //​patch-queue/​foo//,​ mais bien sûr l'​historique de la branche //foo// reste disponible. 
 + 
 +=== Créer la branche de patchs ​===
 <code user>gbp pq import</​code>​ <code user>gbp pq import</​code>​
 +<note info>​Cela changera la branche courante du dépôt à //​patch-queue/​master//​.</​note>​
 +
 +=== Travailler sur les patchs ===
 +  * Un commit = un patch
 +  * C'est une branche git classique
 +
 +=== Re-générer les fichiers de patchs ===
 +<code user>gbp pq export</​code>​
 +<note info>​Cela changera la branche courante du dépôt à //​master//​.</​note>​
 +
 +=== Enregistrer les modifications ===
 +<code user>git add debian/​patches</​code>​
 +<code user>git commit</​code>​
 +
 +=== Mettre à jour le changelog ===
 +<code user>​git-dch -S -a</​code>​
 +
 +=== Construire le paquet ===
 +  * Voir plus bas.
 +
 +=== Après avoir importé une nouvelle release ===
 +<code user> ​ gbp pq rebase
 +git checkout master
 +gbp pq export</​code>​
  
 === Si des commits ont été fait sur //master// depuis la dernière mise à jour === === Si des commits ont été fait sur //master// depuis la dernière mise à jour ===
 <code user>gbp pq rebase</​code>​ <code user>gbp pq rebase</​code>​
  
-==== Mettre à jour les patchs depuis la branche de patchs ==== +=== Créer un premier patch === 
-<code user>gbp pq export</​code>​ +  ​* ​<code user>gbp pq import</​code>​ 
-<note important>Bien penser à ''​git ​add'' ​les patchs générés par l'export.</note>+  * Créer le patch et en faire un commit 
 +  * Générer le fichier patch pour quilt : 
 +<code user>git checkout master 
 +gbp pq export</​code>​ 
 +  * Commit: 
 +<code user>git add -a debian/​patches/</​code>​ 
 +<code user>git commit -m 'mon premier patch'</​code>​ 
 + 
 +==== Cloner un dépôt ​git-buildpackage existant ==== 
 +<code user>gbp clone adresse-du-dépôt-git</​code>​ 
 + 
 +==== Garder un dépôt jour ==== 
 +Après un clone initial avec ''​gbp clone'', vous pouvez exécuter //gbp pull// pour mettre à jour les branches //debian//, //​upstream//​ et //​pristine-tar//​ depuis le dépôt distantLe flot de travail ressemble alors à cela : 
 +  * Initiallement,​ cloner le dépôt une fois 
 +<code user>gbp clone adresse/du/​dépôt.git 
 +cd dépôt</​code> 
 +  * Travailler sur ce clone, faire des commits, récupérer les releases, faire des pushs, etc. 
 +  * Pour récupérer après quelques jours les mises à jours faites par vos collègues :​ 
 +<code user>gbp pull --redo-pq</​code>​ 
 +Cela mettra à jour toutes les branches en fonction des modifications faites par vos collaborateurs,​ et regénérera la branche de patchs.
  
 ==== Compilation du paquet === ==== Compilation du paquet ===
  
 À faire depuis la branche //​patch-queue/​master//​ à jour : À faire depuis la branche //​patch-queue/​master//​ à jour :
-<code user>​DEB_HOST_ARCH=amd64 ARCH=amd64 DIST=sid git-buildpackage --git-pbuilder --git-arch=$ARCH --git-dist=$DIST ​--git-tag ​--git-debian-branch=patch-queue/​master</​code>​+<code user>export ​DEB_HOST_ARCH=amd64 
 +export ​ARCH=amd64 
 +export ​DIST=sid 
 +git-buildpackage --git-pbuilder --git-arch=$ARCH --git-dist=$DIST --git-debian-branch=patch-queue/​master</​code>​
  
 +Vous pouvez ajouter l'​option ''<​nowiki>​--git-tag</​nowiki>''​ pour tagger et uploader la version en cours.
 ===== Quelques rappels de git ===== ===== Quelques rappels de git =====
  
Ligne 112: Ligne 166:
   * [[http://​honk.sigxcpu.org/​projects/​git-buildpackage/​manual-html/​gbp.html|Building Debian Packages with git-buildpackage]]   * [[http://​honk.sigxcpu.org/​projects/​git-buildpackage/​manual-html/​gbp.html|Building Debian Packages with git-buildpackage]]
   * [[https://​wiki.debian.org/​Alioth/​Git#​Using_personal_Git_repositories|Utiliser Git sur Alioth]]   * [[https://​wiki.debian.org/​Alioth/​Git#​Using_personal_Git_repositories|Utiliser Git sur Alioth]]
 +
doc/mentors/git-buildpackage.1393661047.txt.gz · Dernière modification: 01/03/2014 09:04 par captnfab

Pied de page des forums

Propulsé par FluxBB