You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Matthieu Marcillaud 30b344e3ce fix: Ne rien tenter de charger en plugins dist si on utilise SPIP 5-dev 4 months ago
README.md pétouille 3 years ago
checkout Pour faciliter l’explication pour Windows | Mac | Linux, on propose propose d’utiliser 'checkout' tout court. 3 years ago
checkout.bat On déplace les sources de l'outil checkout dans un dossier 4 years ago
checkout.php fix: Ne rien tenter de charger en plugins dist si on utilise SPIP 5-dev 4 months ago

README.md

checkout

Script de checkout multi-méthodes permettant une syntaxe unifiée git/svn/ftp

Le script checkout permet de télécharger ou mettre à jour des sources Git ou Svn (ou Zip), et propose également une méthode pour télécharger les sources de SPIP.

syntaxe type

checkout [methode] [-rRevision] [-bBranche] repoSource dirDest

Installation

Linux / MacOS

  • cloner/télécharger le dossier checkout dans un répertoire de la machine, par exemple /home/toto/checkout (Linux) ou /Users/toto/checkout (MacOS)
  • intégrer le chemin du fichier checkout dans le $PATH de la machine ce qui peut être fait, par exemple, avec un lien symbolique dans /usr/bin par la commande :
sudo ln -s /home/toto/checkout/checkout /usr/bin/checkout

Windows

  • s'assurer que GitBash est bien installé sur la machine (voir par exemple Git for Windows). NB : Toutes les commandes checkout... ci-dessous seront saisies dans une invite de commande GitBash et non pas dans l'interpréteur de commande de Windows (cmd.exe)
  • cloner/télécharger le dossier checkout dans un répertoire de la machine, par exemple c:\laragon\bin\checkout ou c:\xamp\checkout
  • intégrer le chemin du dossier checkout dans le PATH de la machine : Panneau de configuration > Système > Avancé > Variables d'environnement > variables système : Variable Path ⇒ Modifier > ajouter en fin de chaîne ;c:\laragon\bin\checkout

Tous les OS

Tester que l'utilitaire checkout est opérationnel :

checkout --help

doit retourner le help de l'utilitaire

Exemples

Checkout SPIP (core+externals)

Version dev

Installer la version de dev de SPIP + tous les plugins-dist + squelettes-dist dans un répertoire dossier_destination (ne doit pas exister):

Ouvrir une invite de commande dans le dossier où doit être installé le SPIP et appeler le script checkout avec l'option spip

checkout spip dossier_destination

Branche spécifique

Installer la version 3.2 de SPIP + tous les plugins-dist + squelettes-dist :

checkout spip -b3.2 dossier_destination

Installation SSH

Installation en SSH pour les commandes git à la place de HTTPS (permet de faciliter les commits à partir de cette installation) :

checkout spip -bmaster git@git.spip.net dossier_destination

NB : sous Windows les utilisateurs de Putty devront d'abord faire une tentative de connexion sur git@git.spip.net:spip/spip.git afin d'intégrer "l'empreinte ssh" de git.spip.net aux serveurs autorisés.

Mise à jour d'un SPIP installé avec checkout

En général il suffit de rejouer la commande d'installation, par exemple :

checkout spip dossier_destination

montée de version d'un SPIP installé avec checkout

Il suffit de jouer la commande en indiquant la nouvelle version dans le paramètre -b : par exemple pour passer un SPIP en version de dev (branche master donc)

checkout spip -bmaster dossier_destination

Le script va faire la mise à jour des fichiers puis passer sur la version master non seulement pour le core mais aussi pour squelettes-dist et tous les plugins-dist

Checkout un repo

# à une révision SVN
checkout svn -r1234 svn://example.org/repo dossier_destination
# à une révision GIT
checkout git -re1ad434 git://example.org/repo dossier_destination
# à une révision et branche Git
checkout git -re1ad434 -bmaster git://example.org/repo dossier_destination
# un zip quelconque
checkout ftp http://example.org/paquet.zip dossier_destination

Recuperer la commande correspondant à un repo déjà checkout

checkout --read dossier_destination

Voir les logs des mises à jour disponibles pour un répertoire

checkout --logupdate dossier_destination

Si le repo est en git et que le repo est DETACHED, indiquer une branche pour se limiter aux mises à jour disponibles sur la branche qui vous intéresse :

checkout --logupdate -bmaster dossier_destination

Références

Récapitulatif sur les outils d'installation en ligne de commande de SPIP : Installer un SPIP en Git