Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
formations:devweb_6 [20/11/2019 05:42] – talaei | formations:devweb_6 [18/11/2020 16:12] (Version actuelle) – mle-goue | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Devweb 106 : Welcome in the Gang ====== | ||
+ | Cette formation a pour but d' | ||
+ | |||
+ | ===== Introduction aux projets du GInfo ===== | ||
+ | |||
+ | Afin de pouvoir participer aux projets devweb du GInfo, il vous est fortement recommandé d’installer : | ||
+ | * **Laragon** ou **Mamp** ou **Lamp** (selon votre système d' | ||
+ | * **PHPStorm** qui est un IDE (Environnement de développement) fait pour l' | ||
+ | * **Git** qui est un logiciel de version. | ||
+ | |||
+ | Pour vous aider : [[formations: | ||
+ | |||
+ | ===== GIT ===== | ||
+ | |||
+ | ==== Logiciel de version ==== | ||
+ | |||
+ | Dans le cadre des projet du GInfo, vous serez amenés à travailler à plusieurs sur un même projet. Il est ainsi nécessaire que chacun puisse partager et recevoir les fichiers modifiés par d’autre. Vous aurez alors besoin d’un logiciel de gestion de version. | ||
+ | |||
+ | Un logiciel de gestion de version a 2 utilités principales : | ||
+ | * **suivre l’évolution d’un code source** : retenir les modifications effectuées sur chaque fichier, être capable de revenir en arrière en cas de problème ; | ||
+ | * **travailler à plusieurs** : récupérer et envoyer des fichiers aux autres, et si deux personnes modifient un même fichier en même temps, leurs modifications doivent pouvoir être fusionnées sans perte d’information. | ||
+ | |||
+ | Différents sites d' | ||
+ | |||
+ | ==== Les commandes de base ==== | ||
+ | |||
+ | === Initialiser un projet === | ||
+ | |||
+ | Si vous commencez un projet, pour démarrer un dépot git, vous n'avez qu'à vous positionner dans le répertoire du projet via le terminal et saisir : | ||
+ | |||
+ | < | ||
+ | git init | ||
+ | </ | ||
+ | |||
+ | Cela crée un nouveau sous-répertoire nommé .git qui contient tous les fichiers nécessaires au dépôt — un squelette de dépôt Git. Mais attention, pour le moment, aucun fichier n'est encore versionné. | ||
+ | |||
+ | < | ||
+ | |||
+ | === Cloner un depot existant === | ||
+ | |||
+ | Dans le cas d'un projet en groupe, vous ne serez pas forcément l' | ||
+ | |||
+ | Pour cela, il vous faut l'url de votre projet. | ||
+ | |||
+ | < | ||
+ | git clone [votre url] | ||
+ | </ | ||
+ | |||
+ | Cette commande crée un répertoire du nom du projet, avec un .git initialisé. | ||
+ | |||
+ | === Indexer un fichier === | ||
+ | |||
+ | Il convient d' | ||
+ | |||
+ | Pour cela : | ||
+ | < | ||
+ | git add [nom du fichier] | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | Lorsque que vous initialisez un projet sur git, il faut ajouter tous les fichiers du repertoire ! | ||
+ | |||
+ | Pour cela : | ||
+ | |||
+ | < | ||
+ | git add *.c | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | === Valider des fichiers === | ||
+ | |||
+ | |||
+ | |||
+ | === État du dépot === | ||
+ | |||
+ | |||
+ | |||
+ | === Ignorer des fichiers === | ||
+ | |||
+ | Il arrive que certains fichiers dans votre dossier projet ne soient pas à prendre en compte dans le versionnement. Pour qu'ils ne perturbent pas le reste du projet, il suffit de mettre leurs noms dans un fichier .gitignore. | ||
+ | |||
+ | === Effacer un fichier === | ||
+ | |||
+ | Si un des fichiers versionné se retrouve effacé, il n'en sera pas pour autant effacé dans le prje | ||
+ | |||
+ | < | ||
+ | git rm [nom du fichier] | ||
+ | </ | ||
+ | |||
+ | ===== Symfony ===== | ||
+ | |||
+ | Symfony est un framework reposant sur php. Ainsi, il permet de créer les fondations ainsi que les grandes lignes de nos projets. Cela va beaucoup simplifier notre travail, il est donc INDISPENSABLE d’en comprendre les rudiments. | ||
+ | |||
+ | ==== Autoformation sur Symfony 4 : ==== | ||
+ | <note tip>Ces vidéos sont un bon moyen de découvrir Symfony 4, mais il est important de pratiquer en même temps que la vidéo. N' | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | |||
+ | ==== Formulaire utile ==== | ||
+ | |||
+ | **Initialisation d’un projet** | ||
+ | |||
+ | * Téléchargement des dépendances PHP : | ||
+ | < | ||
+ | composer install | ||
+ | </ | ||
+ | * Téléchargement des dépendances JS : | ||
+ | < | ||
+ | npm install | ||
+ | </ | ||
+ | * Compilation des dépendances JS : | ||
+ | < | ||
+ | npm run build | ||
+ | </ | ||
+ | * Compilation continue des dépendances JS : | ||
+ | < | ||
+ | npm run watch | ||
+ | </ | ||
+ | * Pour lancer le serveur web : | ||
+ | < | ||
+ | php -S localhost: | ||
+ | </ | ||
+ | |||
+ | **Mise à jour d'un projet** | ||
+ | |||
+ | Il faut toujours regarder le contenu d’un pull pour savoir ce qu’il faut faire! | ||
+ | |||
+ | * Si composer.json modifié : | ||
+ | < | ||
+ | composer install | ||
+ | </ | ||
+ | * Si package.json modifié: | ||
+ | < | ||
+ | npm install | ||
+ | </ | ||
+ | * Si nouvelles migrations apparues : | ||
+ | < | ||
+ | php bin/console doctrine: | ||
+ | </ | ||
+ | |||
+ | **Assistants** | ||
+ | |||
+ | Certaines commandes permettent de faire facilement certaines tâches. | ||
+ | |||
+ | * Créer/ | ||
+ | < | ||
+ | php bin/console make:entity | ||
+ | </ | ||
+ | * Créer un formulaire : | ||
+ | < | ||
+ | php bin/console make:form | ||
+ | </ | ||
+ | * Créer un controlleur : | ||
+ | < | ||
+ | php bin/console make: | ||
+ | </ | ||
+ | * Générer une migration : | ||
+ | < | ||
+ | php bin/console make: | ||
+ | </ | ||
+ | |||
+ | ===== Mysql (pour Linux) ===== | ||
+ | Si jamais ce n'est pas installé, faut suivre [[https:// | ||
+ | wget http:// | ||
+ | sudo dpkg -i mysql-apt-config_0.8.9-1_all.deb | ||
+ | sudo apt-get update | ||
+ | sudo apt-get install mysql-server | ||
+ | Sous linux, pour les commandes de type | ||
+ | php bin/console doctrine: | ||
+ | on a besoin d'un user de mysql. Par défaut, l' | ||
+ | sudo php bin/console doctrine: | ||
+ | n'est pas propre. Il est donc conseillé de créer un utilisateur qui aura les mêmes droits que le root sur les database. Pour cela, on ouvre un terminal, et =ape : | ||
+ | sudo mysql -u root | ||
+ | Cette comande ouvre un invite de commandes mysql (dans le terminal). ensuite, on crée l' | ||
+ | CREATE USER ' | ||
+ | (de préférence, | ||
+ | GRANT all privileges ON *.* TO ' | ||
+ | FLUSH privileges; | ||
+ | Et c'est bon! On a créé un nouvel utilisateur avec les bons droits, on peut installer les projets du GInfo avec les mêmes commandes que les utilisateurs de Windows! (mais on sait tous qu'on leur est supérieurs) | ||
+ | |||
+ | |||
+ | ---- | ||
+ | |||
+ | Cette formation a été réalisée par [[user: |