# Quel référentiel pour le travail de groupe ?

## Définition

Le référentiel le plus fréquemment utilisé pour stocker des fichiers informatiques est le dossier, ou répertoire. Si ce dépôt est parfaitement adapté à la gestion de fichiers par un utilisateur unique sur son disque dur local, il montre rapidement ses limites pour le travail de groupe.

> **Attention: La dernière sauvegarde l’emporte**
>
> Les programmes ne gèrent cependant pas la modification concurrente d'un même fichier par plusieurs rédacteurs techniques. Lorsque deux rédacteurs modifient le même fichier sans que rien ne le verrouille, celui qui enregistre en dernier efface les modifications de l’autre.

## La situation : deux rédacteurs, un fichier

Dans le cas d'un fichier disponible sur un disque réseau, imaginons qu'Arsène et Louise ouvrent la même version de ce fichier sous un éditeur de texte :

1. Arsène et Louise ouvrent la même version du fichier.
2. Chacun apporte des modifications différentes dans sa copie chargée en mémoire vive, puis enregistre son travail.
3. Arsène enregistre tout d'abord ses modifications, puis Louise.
4. À la prochaine ouverture du fichier, seules les modifications de Louise figureront dans le fichier.

> **Schéma: Modification concurrente d'un fichier sur un dossier réseau partagé**
>
> Diagramme de séquence montrant Arsène et Louise ouvrant la même version d'un fichier, le modifiant chacun de leur côté, puis l'enregistrant l'un après l'autre : les modifications d'Arsène, enregistrées en premier, sont écrasées par celles de Louise.

**Modification concurrente : les changements de Louise écrasent ceux d'Arsène.**

## Pourquoi c'est important

Pour travailler sur un fichier, le rédacteur technique utilise un programme qui lit le fichier sur son disque dur et en charge une copie en mémoire vive. Les modifications s'effectuent sur cette copie. Lorsque le rédacteur technique enregistre ses modifications, le programme écrase sur le disque dur la version précédente du fichier.

La version précédente est donc définitivement supprimée, sauf :

- **si le programme a créé une copie de sauvegarde.** Il n'existe alors que deux versions du fichier à un instant donné : la version n et la version n-1.
- **si le rédacteur technique a utilisé la fonction *Enregistrer sous*, et non *Enregistrer*,** pour créer une nouvelle version du fichier. Le rédacteur technique peut alors créer autant de versions qu'il le souhaite, par exemple en ajoutant le suffixe -1, -2, etc. au nom du fichier.

## Compromis

Verrouiller les fichiers ouverts
: Pour éviter ce genre de situation, de nombreux programmes verrouillent les fichiers ouverts. Ils ne sont donc disponibles qu'en lecture tant que l'utilisateur qui les modifie en a une copie en mémoire vive (c'est-à-dire, tant qu'il ne l'a pas fermé). Il n'est donc pas possible avec ce système de travailler à plusieurs sur le même fichier et d'effectuer par exemple des modifications transverses par lot, comme modifier le chemin de toutes les images.

Ne pas verrouiller les fichiers
: Si le programme utilisé ne verrouille pas les fichiers ouverts, une coordination de tous les instants doit s'instaurer entre les membres de l'équipe.

## Pour aller plus loin

- Pour comparer les différents types de référentiels, revenez à [Référentiel](https://docs.redaction-technique.org/fr/tech-writing-process/repository/).
- Pour voir d’autres risques du travail direct sur un partage réseau, lisez [les répertoires réseau partagés](https://docs.redaction-technique.org/fr/tech-writing-process/shared-network-directories/).
- Pour voir comment un système de gestion de versions gère le contenu plutôt que les fichiers, lisez [Git : du fichier au contenu](https://docs.redaction-technique.org/fr/tech-writing-process/git-from-file-to-content/).
- Pour voir comment un CMS gère le verrouillage des fichiers pour l’équipe, lisez [Les CMS : le workflow en prime, mais une fiabilité à tester](https://docs.redaction-technique.org/fr/tech-writing-process/cms-workflow-and-reliability/).

---

Source: https://docs.redaction-technique.org/fr/tech-writing-process/which-repository-for-group-work/
