Aller au contenu
quest'n'click

StudioGuidePour auteursS'applique de 4.2.3

Diff sémantique

This page in EnglishCette page sur le wiki GitHub

« Changes between revisions », dans l'onglet Check, dit ce qui a changé entre deux révisions du jeu par ce que le jeu nomme : les règles, lieux, répliques et valeurs ajoutés, supprimés ou modifiés, fichier par fichier, plutôt qu'un diff de texte.

Ce que vous obtenez

Pour deux numéros de révision, la liste des fichiers que les opérations du Studio entre elles ont changés, et dans chacun les ids ajoutés, supprimés et modifiés (avec les champs qui ont changé), ou les chemins de valeurs JSON, ou « file changed » quand il ne peut pas en dire plus.

Contexte et versions

Le Studio local (npm run studio) et un Studio hébergé ; pas le Studio de démo (il n'a pas de journal). Depuis la 4.2.3. Sur un Studio hébergé, un build est une révision : on compare deux builds par les leurs (Carte et diff sémantique).

Prérequis

  • Le Studio lancé (présentation), avec des écritures faites par lui (ou par le serveur MCP, qui partage le journal).

Où lancer les commandes

Dans le navigateur, sur l'onglet Check, panneau Changes between revisions.

Ce qu'est une révision ici

Chaque écriture dans le jeu est une opération de son journal (.cache/studio-journal/), numérotée : ce numéro est la révision. Une écriture du Studio, une écriture MCP et une annulation en font chacune une ; un changement fait dehors (un éditeur, git) est enregistré comme une opération à part avant que la prochaine écriture touche ce fichier. La révision 0 est avant la première opération.

Étapes

  1. Tapez deux révisions, From et to (nombres entiers, from ≤ to ; 2 000 d'écart au plus).
  1. Show the changes. Pour chaque fichier que les opérations entre elles ont écrit, comparé aux deux bouts (son contenu avant la première de ces opérations, après la dernière) :
    • une source : les ids ajoutés, supprimés et modifiés, chaque id modifié avec les champs qui ont changé (ou « its place » quand seule sa position a bougé) ;
    • un fichier JSON : les chemins de valeurs ajoutés, supprimés et modifiés ;
    • tout le reste, ou un contenu qu'il ne sait pas lire : « file changed » ;
    • un fichier réécrit à l'identique : aucun changement.
  1. Pour voir les lieux que ces changements nomment, dessinés aux deux révisions : Captures avant et après.

Résultat attendu, et comment le vérifier

Une liste de fichiers avec ce qu'ils ont gagné et perdu, ou « Nothing changed between them. » Une liste de plus de 500 entrées finit par « … and more (cut at 500) » ; au-delà de 500 fichiers, « … and more files (cut at 500) ».

Erreurs fréquentes

SymptômeCauseQue faire
two revisions, as numbersUn champ est vide ou n'est pas un nombre entierTaper deux nombres
from and to are revisions, from ≤ toFrom est après toLes inverser
2,000 revisions at most between from and toL'écart est trop grandLe réduire
no revision <n> yet (404)Le journal n'a pas atteint ce numéroLe baisser
« file changed » pour une source connueUn contenu que le journal local n'a pas gardé (un fichier adopté du dehors)Comparer avec git diff

Fichiers ou données modifiés

Aucun : le diff ne fait que lire le journal. Le dossier private/ du jeu en est exclu.

Références