STIC:STIC I - Atelier technique 1
Programme
Au programme (peut changer) :
- Introduction du projet Webmaster (évalué dans le cadre du cours STIC II)
- Ligne de commande
- Git/GitHub
- Permission fichier sur serveur distant (s'il reste du temps)
Projet Webmaster
En bref :
- Travail qui sera évalué dans le cadre de l'ex16 du cours STIC II (fin de la première année)
- Ce n'est pas un projet comme dans le sens des cours ERGO II, VIP II, ...
- Deux types de projets possibles :
- Installation et configuration d'un portail web (e.g. Word_press, Moodle, MediaWiki]]
- Développement d'un site/application full stack (front-end + back-end) avec JavaScript (voir Node.js, Express.js, Socket.io)
- D'autres projets peuvent être envisagées (e.g. logiciel desktop, Internet/Web of things, etc.). Vous pouvez nous soumettre votre idée de projet.
Les ateliers techniques vous proposent des techniques/outils pour mener à bien ce(s) projet(s).
Pour toute information voir :
Activités
Ligne de commande
Logiciel
Utilisation d'un logiciel pour accèder à la ligne de commande. Attention : l'utilisation de la ligne de commande peut générer des opérations irréversibles !
Logiciels :
- Pour Windows utiliser Windows PowerShell
- Pour Mac utiliser le Terminal
- Pour Linux utiliser l’une des lignes de commandes disponibles selon la version.
Position actuelle
Lorsque vous utilisez la ligne de commande, faites toujours attention à la position actuelle dans le système, que ce soit en local ou sur un serveur distant.
Pour récupérer votre position actuelle si elle n'est pas visible, utilisez :
pwd
C'est l'acronyme de "Print Working Directory".
Commandes principales
Il y a eu un effort dans les dernières années pour uniformer certaines commandes dans les différentes plateforme (Win vs. Unix). Les commandes listées par la suite fonctionnent généralement sur tous les systèmes :
- Changer de dossier
cd
C'est l'acronyme de Change Directory. On utilise cette commande avec des chemins absolus ou relatifs à la position actuelle.
Vous pouvez faire référence aux différents niveaux de l'arborescence par rapport à la position actuelle avec les notations suivantes :
./
fait référence au dossier actuel- attention à ne pas confondre avec
/
(sans point) qui fait référence à la racine de votre système où se trouvent des fichiers importants !
- attention à ne pas confondre avec
../
fait référence à un niveau supérieur../../
fait référence à deux niveaux supérieurs- etc.
~
fait référence au dossier utilisateur (dont la position peut varier selon le système d'exploitation).
Examples :
cd documents
cd ../stic-1/ex1/
cd ~/Documents
cd /home
Hint:
- vous pouvez vous aider avec la touche TAB pour complèter des noms des fichiers très long. Cette pratique s'applique à tous les commandes
- vous pouvez trainer un dossier depuis votre gestionnaire de fichiers dans le terminal de commande pour faire apparaître son chemin
- pour windows seulement : quand vous êtes au bon chemin dans votre gestionnaire de fichiers appuyez sur les touches
Ctrl + l
(comme lausanne) et tapezpowershell
dans la barre de l'adresse.
- Lister les fichiers
ls
On utilise cette commande pour afficher une liste de dossiers/fichiers existants à un chemin donné. Si la commande n'a pas d'argument, la position actuelle sera prise en compte. Si non, il est possible de fournir :
- Un chemin absolu ou relatif, e.g.
ls /home
va lister tous les éléments contenu dans le dossier home qui se trouve à la racine du système - Un critère de selection, e.g.
ls *.png
va lister tous les fichiers qui terminent avec .png
- Créer un dossier
mkdir nom-du-dossier
C'est l'acronyme de Make Directory. On utilise cette commande pour créer un nouveau dossier à un chemin donné (dans la position actuelle si on spécifie juste le nom du nouveau dossier).
Examples :
mkdir my-new-folder
mkdir ~/Documents/atelier-webmaster
- Copier un fichier/dossier
cp chemin-du-fichier-existant chemin-de-la-nouvelle-copie
On utilise cette commande pour créer une copie d'un fichier existant et la placer dans un autre endroit.
Examples :
cp documents documents-old
cp file.txt /home/backup/file.txt
- Déplacer un fichier/dossier
mv chemin-du-fichier-actuel nouveau-chemin-du-fichier
On utilise cette commande d'une manière similaire à cp
avec la différence que le fichier lui-même sera déplacé à un nouveau endroit.
Examples :
mv stic-1/ex12/ stic-2/ex12/
- Détruire des fichiers/dossiers
Il existe des commandes également pour détruire des fichiers/dossiers mais on les verra pas ici. Ces commandes sont en effet irreversibles (i.e. les fichiers ne sont pas mis dans la corbeille).
Git/GitHub
Git (logiciel de gestion de version en local) et GitHub (extension online de Git) sont des outils qui sont très utilisés à présent et leur connaissance, au moins au niveau de base, peut être utile à plusieurs niveaux. En effet, ils ne sont pas utilisés exclusivement pour la programmation, mais également pour :
- Maintenir un site web
- Écrire/maintenir de la documentation online
- Écrire des livres
- Mettre à disposition du matériel d'un cours (online)
- ...
En plus, la participation dans des projets open-source disponibles sur GitHub ne se limite pas à l'écriture du code. Les projets recherchent souvent d'autres type de participation tels que :
- La gestion du projet
- Collecter/répondre aux "Issues" soulevées par les utilisateurs
- Tester/débugger les projets
- Corriger l'orthographe
- ...
Installation des logiciels
Git
- Installez le logiciel git depuis le site officiel : https://git-scm.com/
- Suivre les instructions Git_et_Github#Installer_Git
- Voir la commande
git
depuis la ligne de commande
Optionnel :
- Installer extension Brackets pour utiliser Git https://github.com/zaggino/brackets-git
GitHub
- Créer un account sur le site https://github.com/ si pas fait lors de l'atelier MINIT
- Installez GitHub Desktop https://desktop.github.com/
Activités prévues
Tutoriel interactif
Bon tutoriel initial disponible directement dans le navigateur sur le site de GitHub. Suivre toutes les étapes :
Création d'un projet en local qui utilise git
Créer son propre projet Git en local et découvrir les commandes de bases :
- git init
- git add [params]
- git commit [params]
- git branch [params]
- git checkout [params]
- ...
Pour plus d'infos voir Git - Reference sur le site officiel de Git
Création d'un projet sur GitHub
Créer un répositoire sur GitHub.com qui simule un projet public :
- Utilisation du site GitHub.com
- Utilisation de GitHub pour Desktop
Pour plus d'info voir Hello World example sur GitHub.com
Participer à un projet déjà existant
Petit hands-on sur comment on peut participer/contribuer à un projet déjà existant :
- Fork du projet https://github.com/MALTT-STIC/stic-webmaster-test-xerneas
- Créer un fichier VotreLoginCourt.md || VotreLoginGitHub.md dans la racine du projet
- Envoyer une pull request au projet initial pour incorporer le changement
Pour plus d'infos voir Forking projects sur GitHub.com
Ressources
Ligne de commande
Git/GitHub
- Git et Github
- Guides sur le site officiel GitHub
- GitHub Training & Guides sur YouTube
- GitHub Education : utilisation de GitHub dans l'éducation