Skip to content

Sauvegarder toutes les refs Git dans Revision

Une revision git possède un hash unique pour l'identifier, mais aussi une liste de references (refs) permettant aux humains d'identifier plus facilement ces revisions:

  • branches
  • tag
  • references relatives (HEAD, HEAD^1, ...): on ne supportera pas ca

Le modèle Revision doit permettre de stocker ces references (soit via un ListField, soit via une M2M Repository -> GitRef -> Revision)

Une reference évolue au fur et à mesure des push: un commit A aura la reference master, mais un push suivant avec commit B & C, donnera master à C (il faut donc supporter ce cas et le démontrer via un test unitaire)

Le but final est de pouvoir trouver la revision qui a la reference master, ou le tag v1.2.3 d'un repository précis.