Version 6 — Mai 2019 — JLuc
Cet article présente les informations et étapes permettant de se servir des dépots git.spip.net pour proposer un patch pour le noyau de SPIP et pour les plugins-dist.
Pour l’instant, seule la solution passant par l’UI gitea en ligne est détaillée.
- le core de SPIP : https://git.spip.net/SPIP/spip/
- les plugins-dist sont dans le dossier https://git.spip.net/dist et il y a un repo par plugin.
Par exemple : https://git.spip.net/dist/organiseur
Via l’UI gitea (bouton « bifurcation » ou « fork »)
Si votre pseudo est monpseudo, cela crée un repo https://git.spip.net/monpseudo/spip ou https://git.spip.net/monpseudo/organiseur
Cloner localement votre clone distant.
Pour le core :
git clone https://git.spip.net/monpseudo/spip.git
Pour un plugin, par exemple :
git clone https://git.spip.net/monpseudo/organiseur.git
La branche servira à faire la modif proposée sur une base propre et qui ne servira que pour ce patch.
git branch ma_modif
se mettre sur la branche
git checkout ma_modif
Créer la branche sur votre repo distant en la reliant à sa version locale
git push --set-upstream monpseudo ma_modif
Faire vos modifs dans les fichiers
Commiter toutes vos modifs sur cette branche (locale) :
git commit -am "un joli message de log"
Reporter sur votre repo distant :
git push
Via l’UI gitea : dans l’onglet « Demandes d’ajout » de votre repo cloné distant, cliquez « Nouvelle demande d’ajout ».
- Dans le 1er select, laissez la destination « SPIP:master ».
- Dans le 2e select, choisissez la branche d’origine : « monpseudo:ma_modif »
- Vérifiez le message de commit et validez avec « Créez une demande d’ajout »
Voilà.
Votre proposition se retrouve sur https://git.spip.net/SPIP/spip/pulls
Si vous devez améliorer votre patch, restez sur cette branche ou revenez y :
git checkout ma_modif
Synchronisez votre dépot avec les devs SPIP (master).
- Q : quelle commande ?
(vérifier : git pull
)
Passer par l’interface Web comme il est décrit plus haut ne devrait être utilisé que dans les cas simple comme la correction d’un faute de typo.
Dans le cas général, la solution recommandée est d’utiliser une copie locale du dépôt GIT.
- Q : quelle commande ? Comment faire pour faire une PR tout en local, sans passer par l’intermédiaire d’un clone distant et de l’UI gitea ?