... Zobrazit jako text

Verzování obsahu

Práce s verzemi v CMS jNetPublish

  • Jednotky obsahu jsou položky (assety)
  • Ukládá se veškerá historie jejich změn
  • Změny se připravují ve větších blocích
  • Soubory změn lze přenášet mezi instancemi CMS

Terminologie

  • Transakce (nedělitelný blok změn)
  • Sezení (typicky menší, individuální sada změn)
  • Projekt (větší sada změn sdílená mezi uživateli)

Transakce

  • Odpovídá typicky jedné akci uživatele
  • Vytvoření, uložení, smazání položky
  • Kopírování, přesuny položek
  • Založení sezení, potvrzení změn

Sezení

  • "Miniprojekt"
  • Zakládá se automaticky
  • Pro uživatele a projekt jen jedno
  • Přístupné jen jednomu uživateli
  • Zamykání položek
     

Projekt

  • Hierarchické uspořádání
  • Kořenový projekt = veřejný stav
  • Spolupráce mezi uživateli
  • Přístup řídí ACL

Náhled projektu a sezení

  • Projekt i sezení jsou adresovatelné
  • Přes sdílené sezení
  • Přes náhledovou ("preview") URL

Projekty v OG

  • Zamykání změněné položky všude mimo podprojekty
  • Automatická viditelnost změn v podprojektech
  • Potvrzování změn do nadprojektu přímo

Projekty a zamykání

Projekty v NG

  • Nezamyká se v jiných podprojektech
  • Možnost konfliktních změn
  • V projektu může vzniknou jiná verze slovníku
  • Netriviální přenos změn do podprojektu
  • Potvrzování i slučování změn přes sezení

Potvrzování změn v OG

  • Po položkách ze seznamu assetů
    • Pozor na implicitní zahrnutí dalších položek
  • Potvrzení s uzavřením projektu
  • Výběr assetů k potvrzení
  • Režimy potvrzení vázané na ACL

Slučování změn v NG - předpoklady

  • Sloučení probíhá v obou směrech
  • Nejprve "sloučení", pak "potvrzení"
  • Nejprve je třeba mít shodný slovník

Slučování změn v NG - hromadné

  • Přehled: konfliktní - změněné - nové
  • Hromadné potvrzení vytvoří sezení
  • Pak se řeší konflikty
  • Následně se musí potvrdit sezení

Automatické slučování změn v OG

  • Načasované potvrzení změn
  • Zamkne projekt

Automatické slučování změn v NG

  • plánované potvrzení
  • automatické slučování
  • konflikty řeší správce projektu

Práce s historií

  • Lze zobrazit historickou verzi položky
  • Nelze jednoduše zobrazit minulou podobu stránky
  • Lze oživit historickou verzi položky

Destruktivní změny historie

  • Vrácení transakce
  • Ořez historie

Klonování projektů (NG)

  • Přenos změn mezi prostředími
  • Eliminuje ruční přenášení změn
  • Používání podle několika málo vzorů

Preferované workflow

Produkční prostředí   Neprodukční prostředí
root aktualizace dat Copy of root
potvrzení změn   sloučení změn
Copy of dev root odeslání dat dev root
    ↓↑ sloučení a potvrzení změn
    pomocný podprojekt

Klonovaný projekt

  • Vytvoří se ze správy projektů
  • Je jen pro čtení
  • Na vyžádání se do něj kopíruje stav z produkce

Kořenový projekt vývojového prostředí

  • Projekt viditelný bez přihlášení na vývojovém prostředí
  • Slouží pro sběr změn určených k vrácení na produkci

Pomocný projekt pro odeslání na produkci

  • Vytvoří se a aktualizuje odesláním dat
  • Je jen pro čtení

Doporučení

  • Dohodnout se na pravidlech - zejména definovat, co je etalon obsahu
  • Aktualizovat klonovaný projekt vždycky před začátkem vývoje
  • Potom co nejčastěji
  • Kořenový projekt na vývojovém prostředí držet čistý
  • Držet dvojici synchronizovaných projektů dlouhodobě - nezavírat
  • Aktualizace datového slovníku připravovat na produkčním prostředí