$> ls -l
-rwrw-rw- 1 db0   db0 62.1 Ko 2015-03-30 19:37 Impatient C
-rwrw-rw- 1 db0   db0  3.5 Ko 2015-03-30 19:37 Impatient SCM
-rwrw-rw- 1 db0   db0  3.0 Ko 2015-03-30 19:37 Impatient Emacs
-rwrw-rw- 1 db0   db0  2.4 Ko 2015-03-30 19:37 Impatient Man Pages
-rwrw-rw- 1 db0   db0 10.5 Ko 2015-03-30 19:37 Impatient Perl
-rwrw-rw- 1 db0   db0 17.3 Ko 2015-03-30 19:37 Impatient Python
-rwrw-rw- 1 db0   db0 13.6 Ko 2015-03-30 19:37 Impatient Shell Debutant
-rwrw-rw- 1 db0   db0 16.4 Ko 2015-03-30 19:37 Impatient Shell Script
-rwrw-rw- 1 db0   db0  3.4 Ko 2015-03-30 19:37 Impatient Shell
-rwrw-rw- 1 db0   db0  1.8 Ko 2015-03-30 19:37 Impatient Vim


Impatient SCM (Gestionnaire de versions)

Fonctionnement d'un SCM

Un SCM (ou gestionnaire de versions) permet à des développeurs de travailler en même temps sur un même projet. Il permet également d'avoir un historique de toute les versions du projets.

Un projet est crée sur un serveur.
Les utilisateurs récupèrent une copie de ce projet.
Chacun travaillent sur sa partie du projet.
Au fur à mesure de l'avancement de leurs travails, les utilisateurs envoient leurs modifications au serveur (on appellent ça "commit").
Les autres utilisateurs peuvent alors mettre à jour le projet qu'ils modifient localement avec les modifications de l'autre utilisateur.

Les SCM les plus utilisés

Il existe plusieurs SCM : Pour cet impatient, on ne présentera que Git et Subversion (SVN).

Commandes de base Git et Subversion (SVN)

Français Subversion (SVN) Git
Récuperer pour la première fois la dernière version du projet en local svn checkout [url] git clone [url]
Mettre à jour le projet avec la dernière version sur le serveur svn update git pull
Voir quels fichiers ont été modifiés ou ajoutés par rapport à la derniè version du serveur svn status git status
Ajouter un nouveau fichier au projet (= préparation au commit) svn add [filename ...] git add [filename ...]
Ajouter un fichier modifié au projet (= préparation au commit) Rien à faire git add [filename ...]
Supprimer un fichier du projet (= préparation au commit) svn delete [filename ...] git rm [filename ...]
Renommer/Déplacer un fichier (= préparation au commit) svn move [filename ...] git mv [filename ...]
Commit (= envoyer les modifications demandées au serveur) svn commit -m "message de commit" git commit -m "message de commit"
git push
Voir la liste des commits et les messages svn log git log
Afficher l'aide svn help git help
Voir la différence entre le fichier modifié et le fichier sur le serveur svn diff [filename] git diff [filename]

Commentaires | Ajouter un commentaire