Sans rentrer dans les détails de l’architecture réseau de l’école, il est important de savoir que le point d’entrée unique est le serveur qui s’appelle portier.polytech-lille.fr
. Pour vous connecter, il suffit de taper dans un terminal:
ssh votre_login@portier.polytech-lille.fr -p2222
l’option -p2222
correspond au port utilisé qui n’est pas le port ssh
par défaut et qu’il faut donc bien spécifier.
Une fois sur ce serveur, vous avez accès à vos documents mais tous les programmes ne sont pas forcément installés (comme par exemple clang
). Dans ce cas, le mieux est de se connecter sur une machine de TP comme phinaertXY
, reuzeXY
, lydericXY
, gedeonXY
, gayantXY
(ou XY
est un nombre allant de 01
à 16
) pour avoir accès à tous les programmes utiles.
ssh gayant01
ici, il n’est pas nécessaire de spécifier votre login car a priori vous utilisez le même que celui de
portier
et comme le portssh
est celui par défaut (22
), il n’est pas nécessaire de le spécifier.
À l’intérieur du réseau Polytech Lille, le serveur portier.polytech-lille.fr
s’appelle arsenic
ou serveur-etu.polytech-lille.fr
.
ssh
sur arsenic
.arsenic
via la commande uname -n
arsenic
via la commande w
ou who
uname -n
et who
pour vérifier que les commandes précédentes sont correctes.Sur le réseau Polytech Lille, vos fichiers sont accessibles sur n’importe quelle machine ou serveur et donc il n’est pas nécessaire de copier vos fichiers de machines en machines. Par contre depuis/vers l’extérieur, il peut être parfois nécessaire de copier des fichiers. Pour cela on utilise la commande scp
, et la syntaxe est la suivante (faire man scp
pour l’aide):
scp source destination
que l’on peut spécifier pour des cas d’utilisations suivants:
projet.c
(qui se trouve par exemple sur le bureau) depuis une machine de Polytech Lille vers votre machine locale (le .
final représente le répertoire courant)scp -P2222 votre_login@portier.polytech-lille.fr:~/Bureau/projet.c .
scp -P2222 projet.c votre_login@portier.polytech-lille.fr:~/Bureau/
projet
(qui se trouve par exemple dans le répertoire Documents) depuis une machine de Polytech Lille vers votre machine locale (le .
final représente le répertoire courant)scp -P2222 -r votre_login@portier.polytech-lille.fr:~/Documents/projet .
scp -P2222 -r projet.c votre_login@portier.polytech-lille.fr:~/Documents/
termius
par exemple), essayez de transférer des fichiers depuis / vers les machines de Polytech Lille.GIT
GIT
est un gestionnaire de version qui est devenu un des standards pour le partage de ressources numériques. Il possède un nombre important de fonctionnalités et nécessite un peu d’apprentissage pour le maîtriser. Ici nous verrons les fonctionnalités les plus basiques qui vous permettront de facilement partager / sauvegarder vos fichiers.
sauvegarde
(le nom n’a pas d’importance) qui contiendra tous les fichiers que vous souhaiterez sauvegarder.GIT
, créer un sous-répertoire programmation
dans votre répertoire sauvegarde
.ed_info
dans votre répertoire programmation
tree
.
|-- Bureau
|-- ...
|-- public_html
`-- sauvegarde
`-- programmation
`-- ed_info
GIT
git config --global user.name "votre nom"
git config --global user.email prenom.nom@polytech-lille.net
git config --global core.editor vim
git config --global push.default simple
git config --global color.decorate full
git config --global merge.conflictstyle diff3
git config -l
:user.name=votre nom
user.email=prenom.nom@polytech-lille.net
core.editor=vim
push.default=simple
color.decorate=full
merge.conflictstyle=diff3
GIT
hello.c
du premier ED Info:#include <stdio.h>
int main ()
{
printf ("Hello World !\n");
return 0;
}
Placer ce fichier dans le répertoire sauvegarde/programmation/ed_info
.
sauvegarde
, taper git init
git status
, vérifier que le message indique bien que le répertoire programmation
n’est pas suivi.Sur la branche master
Aucun commit
Fichiers non suivis:
(utilisez "git add <fichier>..." pour inclure dans ce qui sera validé)
programmation/
aucune modification ajoutée à la validation mais des fichiers non suivis sont présents (utilisez "git add" pour les suivre)
git add programmation/ed_info/hello.c
git status
, vérifier que le message indique bien que le fichier hello.c
est un nouveau fichier.Sur la branche master
Aucun commit
Modifications qui seront validées :
(utilisez "git rm --cached <fichier>..." pour désindexer)
nouveau fichier : programmation/ed_info/hello.c
git commit -m "(feat) ed_info premier commit"
. Votre fichier est désormais enregistré dans le dépôt GIT
hello.c
, remplacer la ligne contenant printf
par printf ("Hello les SE3 !\n");
git status
, vérifier que le message indique bien que le fichier hello.c
est modifiéSur la branche master
Modifications qui ne seront pas validées :
(utilisez "git add <fichier>..." pour mettre à jour ce qui sera validé)
(utilisez "git checkout -- <fichier>..." pour annuler les modifications dans la copie de travail)
modifié : programmation/ed_info/hello.c
aucune modification n'a été ajoutée à la validation (utilisez "git add" ou "git commit -a")
git add sauvegarde/programmation/hello.c
pour indiquer que vous souhaitez sauvegarder ces changements puis git commit -m "(fix) ed_info changement printf"
pour valider les changements.git log --oneline
pour voir l’historique des changements sur votre dépôt.2306f11 (HEAD -> master) (fix) ed_info changement printf
763b933 (feat) ed_info premier commit
git checkout abcdefg
où abcdefg
est l’identifiant précédent le premier commit que vous avez fait (dans mon cas c’est 763b933
).cat auvegarde/programmation/hello.c
et constatez que vous affichez la première version du fichier C
.git checkout abcdefg
où abcdefg
est l’identifiant précédent le dernier commit que vous avez fait (dans mon cas c’est 2306f11
).cat auvegarde/programmation/hello.c
et constatez que vous affichez la dernière version du fichier C
. Vous constatez donc qu’avec la commande git checkout
vous pouvez afficher le contenu de n’importe quelle version sauvegardée… et pas uniquement la dernière.Pour le moment, tout ce que vous avez fait n’est accessible que sur les machines Polytech. L’objectif est de le rendre accessible depuis n’importe où. Nous allons donc mettre votre dépôt sur un serveur GIT
. Il y en a plusieurs que vous pouvez utiliser comme:
GIT
de Polytech LilleGIT
de l’universitégit remote add origin https://gitlab.com/votre_login/votre_projet.git
il existe deux types de connexions sécurisées (https ou ssh)… pour des questions de sécurité, ssh vers l’extérieur de polytech n’est pas possible
où vous aurez remplacez votre_login
et votre_projet
par les bonnes valeurs.
git push origin master
.gitlab.com
que votre projet a bien été transféré sur le serveur.Pour vérifier que votre dépôt est accessible partout, vous pouvez le cloner. Pour cela:
sauv_temp
git clone https://gitlab.com/votre_login/votre_projet.git
hello.c
sauvegarde
git pull
Une fois que le dépôt est créé sur une machine (A) et cloné sur une autre machine (B). La procédure de travail est simple:
git pull
pour récupérer les dernières modifications (s’il y en a)git add
git commit -m "message pertinent"
)git push
Outre la synchronisation du travail sur plusieurs ordinateurs, GIT
permet du partager des dépôts (avec votre binôme, un enseignant…), de facilement revenir à une version précise de vos documents (et donc il n’y a pas la crainte de sauvegarder une mauvaise version ou de perdre du contenu)… De plus l’environnement gitlab
, github
ajoutent un ensemble de fonctionnalités très intéressantes:
Vous verrez ces fonctionnalités au semestre prochain :)