L'utilisation de Git dans ZdS

Incursion dans les entrailles de la bête

Le problème exposé dans ce sujet a été résolu.

Bonjour,

Alors, avant toute chose, je vais me permettre de poser le contexte, histoire que vous sachiez pourquoi je pose ces questions : je suis en stage depuis quelques mois, et je travaille sur une application Web en Node.js qui doit permettre grosso modo de générer des schémas à partir d’une description textuelle légère. Un des grands axes de cette application est l’intégration d’un outil de gestion des versions, avec de préférence la gestion des modifications concurrentes.

Mes réflexions sur cette partie du cahier des charges m’ont amené à penser à ZdS qui, d’après cet article sur la sortie de la v121, implémente Git pour la gestion des versions des contenus, ce qui m’a semblé une très bonne idée que je souhaiterais reprendre dans le cadre de l’application que je développe. Cependant, j’ai été incapable de retrouver l’endroit où se trouve implémentation du VCS sur le dépôt GitHub pour m’en inspirer, ne sachant pas trop par où commencer… :(

Ce n’est pas encore définitif, mais je pense utiliser le module NodeGit pour l’implémentation de Git dans mon cas.

Ma question porte donc sur un point particulier de l’implémentation sur ZdS : imaginons que deux auteurs A et B font deux modifications concurrentes dans un même contenu, et que A valide ses modifications. Par quel moyen le système gèrera le conflit lorsque B validera à son tour ?

Habituellement, dans un dépôt Git classique, un conflit a lieu lorsqu’un développeur cherche à récupérer des commits contenant des modifications concurrentes sur un dépôt distant, mais je doute qu’il existe un tel dépôt sur ZdS pour les contenus ^^

Voilà, j’espère que c’est clair, la question est assez délicate, je dois dire… Si ce n’est pas clair, n’hésitez pas à me le faire remarquer.


  1. Qui date un peu, d’ailleurs, peut-être l’information est-elle obsolète ? 

+0 -0

Merci, je crois avoir trouvé ce qui m’intéressait ici :)

Du coup, si j’ai bien compris, quand quelqu’un enregistre des modifications dans son contenu, un commit est effectué dans une copie locale du dépôt (un clone), puis déversé dans un dépôt préalablement créé avec git init --bare, c’est bien ça ?

+0 -0

Ma question porte donc sur un point particulier de l’implémentation sur ZdS : imaginons que deux auteurs A et B font deux modifications concurrentes dans un même contenu, et que A valide ses modifications. Par quel moyen le système gèrera le conflit lorsque B validera à son tour ?

Jérôme Deuchnord

Aucun.

Tout est écrasé, donc "last write wins".

+1 -0

Ma question porte donc sur un point particulier de l’implémentation sur ZdS : imaginons que deux auteurs A et B font deux modifications concurrentes dans un même contenu, et que A valide ses modifications. Par quel moyen le système gèrera le conflit lorsque B validera à son tour ?

Jérôme Deuchnord

Aucun.

Tout est écrasé, donc "last write wins".

victor

Oh :o

+0 -0

Tout est écrasé, donc "last write wins". *

  • Hugo et Romain modifie le tutoriel "Fuite de mémoire sur Android". Romain appuie avant Hugo sur le bouton valider, la modification de Romain est acceptée. Quand Hugo valide, il se mange une erreur "Une nouvelle version a été postée avant que vous ne validiez.". Hugo est obligé de re-charger sa page pour re-modifier
+2 -0

Tout est écrasé, donc "last write wins". *

  • Hugo et Romain modifie le tutoriel "Fuite de mémoire sur Android". Romain appuie avant Hugo sur le bouton valider, la modification de Romain est acceptée. Quand Hugo valide, il se mange une erreur "Une nouvelle version a été postée avant que vous ne validiez.". Hugo est obligé de re-charger sa page pour re-modifier
Hugo

Bien vu, au temps pour moi. First write wins, donc. :D

+2 -0
Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte