Si vous utilisez le client desktop pour synchroniser en local vos fichiers cela vous est arrivé au moins une fois !
Et lĂ câest la panique, une peur insondable du plus profond des Ăąges informatiques nous dit « ATTENTION tu vas perdre tes modifications »
Pourquoi cela arrive ?
TrĂšs simple, imaginez que Alice et Bob synchronisent localement le mĂȘme fichier.
- Alice fait une modif Ă 11h43 et synchronise avec le serveur Ă 11h46
- Bob fait une modif Ă 11h45 et synchronise avec le serveur Ă 11h47
Et voilĂ , le serveur va percuter que le mĂȘme fichier a Ă©tĂ© modifiĂ© par deux chemins diffĂ©rents et va vous dire « heu tu veux que je fasse quoi avec tes deux fichiers ? »
Effectivement Alice a modifiĂ© en premier le fichier et lâa rendu au serveur juste aprĂšs MAIS entre temps Bob a lui aussi modifiĂ© le fichier Ă 11h45⊠Donc il nâa pas pu rĂ©cupĂ©rer les modifications de Alice et si le serveur accepte son fichier il va Ă©craser les modifications dâAlice
Que faire ?
1 - ne pas paniquer et cliquer sur résoudre les conflits
2 - TOUJOURS conserver les deux fichiers, ca vous Ă©vitera de faire des bĂȘtises en Ă©crasant la mauvaise version par erreur
3 - ouvrir les deux fichiers (le fichier en « conflit » aura une extension genre « _1 ») et faire votre fusion manuelle avant dâĂ©craser
le fichier « conflicted » est devenu le fichier _1
et si jâai fait une erreur ??!!
On avait dit de conserver les deux fichiers !!!
Nâoubliez pas que framaspace gĂšre les versions de vos fichiers
Il vous suffit de restaurer les anciennes versions en ayant pris soin de tĂ©lĂ©charger la version avant pour vĂ©rifier que câest la bonneâŠ
On va Ă©viter de cumuler les erreurs.
Pour aller plus loin
Pour les plus geeks dâentre-nous les principes de synchronisation sont gĂ©nĂ©riques et sont analogues Ă ceux de git ou de onedrive par exempleâŠ
Avec une logique de « pull/push » qui est obligatoire pour les systĂšmes dĂ©centralisĂ©s. Je peux vous expliquer cette architecture puisque nous lâavons implĂ©mentĂ© pour implĂ©menter le mode dĂ©connectĂ© des apps nosoft
Cela Ă©tant dit jâai dĂ©tectĂ© que nextcloud sâemmĂȘlent un peu les pinceaux parfois, car il y a un deadlock sur la rĂ©solution de conflit
SĂ©quence de reproduction
1 - générer un conflit
2 - conserver les deux fichiers
3 - ouvrir le _1 et enregistrer sous en Ă©crasant le fichier original (replace)
4 - synchro OK mais
- alerte sur le IfMatch qui sent le conflit latent !
- le fichier _1 est toujours dans lâarborescence #WTF !!!
5 - supprimer le fichier _1 manuellement
et boom reconflit !
#deadlock
@pyg tu lâas dĂ©jĂ eu celui lĂ ?
à leur décharge les problÚmes de synchronisations sont TRES complexes à gérer cÎté dev client/serveur et aussi cÎté UX⊠et le IfMatch me rappelle un problÚme que nous avions eu en développant le mode déconnecté
Il y a donc surement un bug Ă remonter et surtout une demande dâĂ©volution qui est de « systĂ©matiquement » conserver les deux fichiers sans demander Ă lâutilisateur car sinon TROP gros risque de faire des bĂȘtises.
Pour info, onedrive conserve systĂ©matiquement les 2 fichiers en lâidentifiant du PC comme extension du fichier ce qui est plus parlant que _1 ou _2 qui nâaide pas. Du coup on sait quel device est en conflit
@pyg, quand jâaurai plus de temps je finaliserai le petit tuto illustrĂ© que jâai amorcĂ© ici