Article paru dans Hello World (Février 2012), la newsletter de l'IUT de Valence.
Qui n’a jamais perdu un projet, deux heures avant de le rendre ? Qui n’a jamais passé 10 minutes à comparer deux documents en se demandant lequel des deux il faut imprimer. Dans cet article, nous allons essayer de donner quelques pistes pour que ce genre de problèmes ne se pose plus.
La règle des deux copies séparées
La sauvegarde est un peu comme une via ferrata : on doit être accroché deux fois à la montagne, pour avoir toujours une sécurité lorsque l’on déplace sa corde. La sauvegarde doit toujours être faite sur deux supports différents. Bien sûr, il faut veiller à ne jamais laisser ces deux supports au même endroit. Pensez également aux solutions de stockage en ligne telles qu’une simple boîte mail, ou, plus pratique encore, l’Intranet de l’IUT.
Gestion des versions
Même lorsque l’on travaille seul, il faut se donner les moyens de rendre un projet différenciable dans le temps. Cela est très utile si vous manipulez le projet avec plusieurs ordinateurs. La méthode la plus simple consiste à renommer le dossier en fonction de la date.
Traçabilité
Dès lors qu’un projet devient conséquent, conserver les versions précédentes devient indispensable. Lorsque l’on fait une modification, rien ne prouve qu’elle ne va pas nuire aux parties déjà en place. Retrouver la dernière version fonctionnelle peut faire gagner beaucoup de temps. Il convient aussi de créer un fichier contenant, pour chaque version, les tâches réalisées et ce qu’il reste à faire (une « To Do List »).
Travailler à plusieurs
En binôme, ces méthodes semblent suffisantes, bien qu’elles doivent être appliquées avec plus de rigueur encore. Pour éviter que le groupe ne fasse les choses en double, il faut veiller à partager la dernière version dès qu’une tâche est accomplie, mais aussi à définir à l’avance, pour chacun, les tâches à accomplir. A plus de deux, ces méthodes peuvent se compliquer et il conviendra d’utiliser des services (souvent complexes) de gestion de révision (Github et Google Code par exemple), mais avant d’en arriver là, il faut se demander si le projet ne peut pas être redécoupé. Dans ce cas, on peut faire évoluer les différentes versions séparément. Toute la réussite du projet résidera alors dans la communication entre les membres de l’équipe.