Conflicten
Overzicht
De Nextcloud-desktopclient uploadt lokale wijzigingen en downloadt externe wijzigingen. Wanneer een bestand zowel lokaal als extern is gewijzigd tussen synchronisaties, kan de client de situatie niet zelfstandig oplossen. Het zal een conflictopmaakbestand maken met de lokale versie, de externe versie downloaden en de gebruiker informeren dat er een conflict is opgetreden dat aandacht vereist.
Voorbeeld
Stel je voor dat er een bestand is genaamd mydata.txt
in je gesynchroniseerde map. Het is al een tijdje niet veranderd en bevat lokaal en op afstand de tekst “inhoud”. Nu, bijna op hetzelfde moment, werk je het lokaal bij naar “lokale inhoud” terwijl het bestand op de server door iemand anders wordt bijgewerkt naar “afstandsinhoud”.
Bij de poging om de lokale wijzigingen te uploaden, zal de desktopclient opmerken dat de serverversie ook is gewijzigd. Dit creëert een conflict en je zult nu twee bestanden op je lokale machine hebben:
mydata.txt
bevattende “externe inhoud”mydata (conflicterende kopie 2018-04-10 093612).txt
met “lokale inhoud”
In deze situatie bevat het bestand mydata.txt
de externe wijzigingen (en zal het blijven worden bijgewerkt met verdere externe wijzigingen wanneer deze plaatsvinden), maar de lokale aanpassingen zijn niet naar de server gestuurd (tenzij de server het uploaden van conflicten inschakelt, zie hieronder).
De desktopclient meldt deze situatie via systeemmeldingen, het systeemvakpictogram en een gele ‘onopgeloste conflicten’ badge in het instellingenvenster voor het account. Door op deze badge te klikken, wordt een lijst weergegeven met de onopgeloste conflicten en door op een van hen te klikken, opent een verkennervenster dat naar het relevante bestand wijst.
Om dit conflict op te lossen, moet je beide bestanden openen, de verschillen vergelijken en waar nodig de lokale wijzigingen van het ‘conflicted copy’-bestand kopiëren naar het basisbestand. In dit voorbeeld zou je mydata.txt
kunnen aanpassen om ‘lokale en externe inhoud’ te zeggen en het bestand met ‘conflicted copy’ in de naam te verwijderen. Daarmee is het conflict opgelost.
Conflicten uploaden (experimenteel)
Standaard wordt het conflicterende bestand (het bestand met “conflicterende kopie” in de naam dat jouw lokale conflicterende wijzigingen bevat) niet naar de server geüpload. Het idee is dat jij, de auteur van de wijzigingen, de beste persoon bent om het conflict op te lossen en het tonen van het conflict aan andere gebruikers verwarring kan creëren.
Echter, in sommige scenario’s is het heel logisch om deze conflicterende wijzigingen te uploaden zodat lokaal werk zichtbaar kan worden, zelfs als het conflict niet onmiddellijk opgelost zal worden.
In de toekomst kan er een serverbrede schakelaar voor dit gedrag zijn. Voor nu kan het al worden getest door de omgevingsvariabele OWNCLOUD_UPLOAD_CONFLICT_FILES=1
in te stellen. .