À ce jour (novembre 2019), SPIP est herbergé en GIT sur https://git.spip.net/SPIP et https://github.com/spip/SPIP
La distribution est séparée en plusieurs dépôts : en attendant le basculement à Composer, il est nécessaire d’utiliser un script pour tout récupérer en une fois.
#2024 cf section Installation du README https://git.spip.net/spip/spip/src/branch/master/README.md
Retour d’expérience sur les scripts existants :
1) git_checkout
Script d’azertyu : https://git.spip.net/spip-contrib-outils/git_loader
Le script permet de récupérer une version précise (un tag) ou le master, de choisir une méthode (ssh ou http).
Utilisation :
git_loader/git_loader.sh [-v] [-d] [-m]
-
-v
: version de SPIP master ou x.y.z, par défaut master -
-d
: répertoire cible où télécharger SPIP et ses plugins, par défaut : répertoire courant -
-m
: mode de téléchargement (git ou http), par défaut http
Documentation complète : consulter le Readme
Exemple :
Pour récupérer la version 3.2.5 dans le sous-dossier « mon_spip » :
bash git_loader.sh -d mon_spip -v 3.2.5
2) checkout.php
Script de Cerdic : https://zone.spip.net/trac/spip-zone/browser/spip-zone/_outils_/checkout
Le script permet de suivre une branche, de récupérer une révision précise, de choisir une méthode entre git/svn/ftp, et d’indiquer un dépôt à utiliser (autres que ceux par défaut).
Utilisation :
checkout.php [methode] [-rRevision] [-bBranche] repoSource dirDest
checkout.php --help
pour plus d’explications.
Exemple :
Pour récupérer en git la branche 3.2 dans le sous-dossier « mon_spip » :
php checkout.php spip -b3.2 mon_spip
3) spip-composer
Script de marcimat : https://github.com/marcimat/spip-composer
4) composer-installer
Script de James : https://git.spip.net/spip-contrib-outils/composer-installer
5) Récupérer un patch GIT pour SPIP
Exemple : appliquer le patch https://git.spip.net/spip/spip/pulls/17
Méthode 1 : récupérer le patch et l’appliquer
Cette méthode à l’avantage de marcher quelque soit la façon SPIP a été installé (FTP, spip_loader, SVN, GIT)
wget https://git.spip.net/spip/spip/pulls/17.patch
git apply 17.patch
Méthode 2 : faire un checkout de la branche directement
Il me semble que celle-ci ne marche que si on a installé SPIP via une commande GIT.
git fetch origin pull/17/head:prive_fluide