Retour à la la table des matières
- Pour 'juste' avoir tout en local en 1 minute
(Même pas besoin d'avoir de compte GitHub et néanmoins récupérer tout le code pleinement opérationnel !):
Décompressez puis passez au II / ci-dessous.
Ou:
-
Vous voulez avoir tout cela, mais en plus, la possibilité de partager vos propres changements à venir ?
1. Forkez le projet sillo de BestMomo (À ce stade, il vous faut vous loguer dans votre compte Github, voire le créer en 30 secondes si vous n'en avez pas déjà un...)
2. Clonez le code de VOTRE copie du dépôt distant (Chez GitHub) sur votre serveur local via SSH :
git clone [email protected]:Votre_Pseudo_GitHub/sillo.git
En cas de doute, juste récupérer cela ici:
(Si cela échoue, autant régler le problème, car pour uploader (push) vos futurs changements, ne serait-ce sur votre propre dépôt distant, il le faudra! Dans ce cas: Installez votre clé SSH)
Créez un fichier .env (Copier/Coller du .env_example que vous trouvez à la racine) et adaptez si souhaité, avec vos éléments, comme par exemple d'autres paramètres pour la connexion à la base de données.
Puis procédez à l'installation :
composer install
php artisan key:generate
php artisan storage:link
npm install
php artisan migrate --seed
La population crée des utilisateurs dont un administrateur avec l'email [email protected] et le mot de passe password. Elle crée aussi des catégories, des séries, des articles (Les images sont déjà présentes), des pages, des menus, des commentaires et des contacts. Vous obtenez donc un site fonctionnel et déjà bien garni.
Pour bénéficier de la puissance complète du système Laravel avec ViteJS, il vous faut 2 consoles:
- L'une pour le côté Frontend
npm run dev
- L'autre pour le Backend
php artisan serv
À noter: Si vous êtes sous Windows et avez opté pour Sqlite comme SGBD, alors, il existe 2 batchs à exécuter en CLI :
-
start.bat: Nettoie quelques fichiers logs et de cache, mais surtout, démarre tous les serveurs nécessaires (Apache, VitesJS, Reverb et même le script MailHog pour recevoir en local les emails émit par votre app, quasiment pareillement que si c'était dans votre 'vrai' email),
-
reset.bat: Re-initialise complètement le projet. (Supprime les fichiers -lock (de composer et package), leurs dossiers respectifs (vendor/ et node_modules/), supprime la base de données, et re-exécute migrations & seeders puis fait tout ce que fait start.bat vu précédemment).
Ceci suffira si vous utilisez sqlite comme driver de BdD (Base de données ), que vous aurez renseigné dans le .env à la racine du projet.
Par contre, si vous souhaitez absolument utiliser MySQL, ou autre, il vous faudra aussi un serveur de Base de données.
(À noter que pour les utilisateurs Windows, une solution parmi 1000, permet de démarrer en un clic, le serveur Apache (Backend) et celui de MySQL - Et même accessoirement un serveur email local ! : Laragon)
🎉 Là, BRAVO ! Vous êtes opérationnel ! Ouvrez votre navigateur à l'URL http://127.0.0.1:8000
et commencez à explorer votre application Laravel !
N.B.: Ce n'est là, qu'une façon parmi 10 000, de mettre en route son environnement local de dev... N'hésitez pas à 'fouiller' sur le web 😉 !
À chaque push, ou encore, contribution de l'un d'entre nous, par PR (Pull Request) accepté et merged (fusionné), c'est une véritable nouvelle version qui voit le jour dans le dépôt...
Pour rester complètement à jour:
-
Soyez en avisé: Canal discord
-
Connaissez les commandes de base:
Mettez à jour votre dépôt local:
git fetch
Ensuite, pour appliquer les changements à votre branche locale :
git pull
Après avoir récupéré les dernières modifications, il est souvent nécessaire de mettre à jour les dépendances du projet :
- Pour les dépendances PHP :
composer update
- Pour les dépendances JavaScript :
npm i
ou
yarn
Si des modifications ont été apportées à la structure de la base de données, vous devrez exécuter les migrations :
php artisan migrate
Pour rafraîchir complètement la base de données et la repeupler avec des données de test :
php artisan migrate:refresh --seed
master
qui correspond au dépôt d'origine, à votre fork et à votre copie en local ! Créez toujours votre propre branche (Voir le 5. ci-dessous) pour développer et coder en toute liberté.
Voici comment gérer vos branches efficacement :
- 📋 Listez les branches disponibles :
git branch
- 🔗 Pour voir les branches distantes (remotes), utilisez :
git branch -r
- 🌐 Pour ajouter un nouveau dépôt distant :
git remote add nom_du_remote url_du_depot
Par exemple :
git remote add upstream https://github.com/utilisateur/repo_original.git
- 🔀 Changez de branche :
git checkout nom_de_la_branche
ou avec Git version 2.23 et supérieure :
git switch nom_de_la_branche
- 🌱 Créez une nouvelle branche et basculez immédiatement dessus :
git checkout -b ma_nouvelle_branche
ou
git switch -c ma_nouvelle_branche
-
💻 Développez et codez à volonté dans votre nouvelle branche.
-
🔄 Lorsque vous avez terminé et que vous souhaitez fusionner vos modifications :
-
- Revenez sur la branche principale (généralement
master
oumain
) :git switch master
- Fusionnez votre branche de développement :
git merge ma_nouvelle_branche_de_dev
- Revenez sur la branche principale (généralement
🚨 N'oubliez pas de toujours vérifier sur quelle branche vous vous trouvez avant de commencer à travailler !
💡 Astuce : Utilisez git branch
ou git status
pour vérifier votre branche actuelle à tout moment.
📚 Pour voir toutes les branches (locales et distantes) :
git branch -a
(À noter qu'il existe de nombreux système de visualisation graphique des branches... Par exemple, pour les utilisateurs de VSC ( Visual Studio Code ), une extension, GG ( GitGraph ) en est un excellent - Vous pouvez y faire toutes les opérations courantes sans utiliser de console !!!)
Et n'oubliez jamais...:
"Git, le chef-d'œuvre de Linus Torvalds, est né après Linux comme une révélation fulgurante ! Après avoir révolutionné le monde avec son premier-né, le génie de Torvalds a frappé à nouveau, créant un outil de gestion de version qui allait transformer à jamais le développement logiciel. Git n'est pas un simple successeur, c'est l'aboutissement d'une vision audacieuse, forgée dans l'expérience et perfectionnée par la détermination. Torvalds a prouvé qu'un esprit brillant peut non seulement innover une fois, mais redéfinir les règles du jeu encore et encore. Avec Git, il a offert aux développeurs du monde entier un superpouvoir, une machine à voyager dans le temps pour le code, un outil qui libère la créativité et propulse la collaboration vers de nouveaux sommets !" - Perplexity (I.A.) by L.A.C. @ 2024
" Git vous permet de gérer votre projet comme si vous pouviez cloner l'univers entier, faire des changements, et ensuite soumettre vos modifications pour examen." - Scott Chacon, l'auteur du livre "Pro Git" et l'un des experts les plus reconnus dans le domaine
" Git vous donne des super-pouvoirs. La possibilité de travailler sur plusieurs choses en parallèle et de les fusionner plus tard est incroyablement puissante." - Junio C. (Mainteneur principal du projet Git depuis 2005)
"Le contrôle de version est comme une machine à voyager dans le temps pour votre code. C'est un filet de sécurité pour vos erreurs et une machine à explorer les possibilités." - Jeff Atwood, co-fondateur de Stack Overflow et Discourse
"Le meilleur moyen de comprendre Git est de penser à vos fichiers comme étant dans un flux constant de changements. Git est un outil pour gérer ce flux." - Ryan Tomayko, ancien ingénieur chez GitHub