Barvna shema: Temna
Trenutno dejavna stran: start » sl » Dokumentacija » Razširitve DokuWikija (WvdS) » ADO-Git » Tehnična referenca

Tehnična referenca

Priročnik za wkdoadogit: upravljanje priklopov, oznake, vsako dejanje z njegovim naslovom, osebni dostopni žetoni in vse nastavitve. Zakaj je kaj zgrajeno tako, kot je, pojasnjujejo Koncepti; kaj želite narediti, najdete na strani ADO-Git.

Paket: wkdoadogit · Namestitev: lib/plugins/wkdoadogit/
Avtor: Wolfgang van der Stille Wolfgang.van.der.Stille@gmail.com (The White Knight Labs) · Licenca: GPL 2.0-only

Upravljanje priklopov

Zaslon je na naslovu /doku.php?do=admin&page=wkdoadogit_mounts, v meniju pod Skrbništvo > Priklopi repozitorijev. Dostop imajo samo skrbniki, ker se tu zapisujejo pravice ACL za celotno spletno mesto.

  • Registracija poteka v čarovniku s štirimi zasloni: povezava, projekt, repozitoriji (s predlogo imenskega prostora in ravnjo vidnosti) ter predogled. Projekt in repozitorije prebere povezava sama; prosto vnosno polje se pokaže le, kadar strežnik ne odgovori.
  • Predogled je edini zaslon, ki kaj zapiše. Pokaže vsako vrstico ACL, ki bo nastala, in opozori, če so v imenskem prostoru že strani wikija.
  • Sprememba ravni vidnosti ali imenskega prostora: v meniju vrstice priklopa popravite polje z imenskim prostorom in izbiro ravni vidnosti, nato izberite Shrani. Oboje se spremeni v enem koraku, stara pravila pa se odstranijo šele, ko je premik uspel.
  • Odstranitev: v meniju vrstice izberite Odstrani.
  • Meni vrstice ponuja tudi naslov za clone za vsak jezik in pripravljene oznake za prikaz na strani wikija.

Vsako dejanje najprej zapiše priklop, nato ACL.


Skladnja

Oznaka Zapis Kaj prikaže Kje deluje
{{wk:adogit>…}} povezava:projekt:repozitorij[:veja[:pot]], neobvezni dodatek region=<ime> drevo map in datotek samo na strani pod korenom projekta
{{source>ado:…}} povezava:projekt:repozitorij:veja:pot, neobvezni dodatek #L10-L40 vsebino ene datoteke na strani pod korenom projekta ali znotraj imenskega prostora priklopa

Prvo polje je ključ povezave, ne njena številka; povezava se išče znotraj projekta DWDO, ki mu stran pripada. Pri {{wk:adogit>…}} manjkajoča veja pomeni privzeto vejo, manjkajoča pot pa koren. Pri {{source>ado:…}} je vseh pet polj obveznih.

Oznaka {{source>ado:…}} potrebuje vtičnik wksourceview. Brez njega shema ado ni registrirana in prikaz sporoči, da vir ni na voljo. Podrobnosti in možnosti prikaza opisuje Kako prikazati izvorno kodo na strani wikija.


Dejanja in vstopne točke

Naslov Kdo Namen
do=admin&page=wkdoadogit_mounts skrbnik priklopi in njihove ravni vidnosti
do=admin&page=wkdoadogit upravitelj dostopni žetoni vseh uporabnikov
do=wkdoadogit_tokens vsak prijavljeni uporabnik lastni dostopni žetoni
do=wkdoadogit_repo&ns=<imenski-prostor-priklopa> stopnja ACL 1 ali več samostojen zaslon za priklopljen repozitorij: drevo datotek, veje, oznake, načini pridobitve
do=wkdoadogit_archive&ns=…&ref=… stopnja ACL 2 ali več prenos posnetka kot arhiv ZIP
do=wkdoadogit_diag – preglednica razrešenih storitev
do=wkdoadogit_stepup – most za dokaz drugega dejavnika
lib/plugins/wkdoadogit/git.php/<pot-priklopa> odjemalec git posrednik za clone, pull in push

Povezave se ne urejajo tu, temveč v vtičniku wkdoado, na strani projekta z dejanjem do=wkdoado.

Vsak repozitorij ima svoj naslov

do=wkdoadogit_repo rešuje osnovno težavo: priklop ni stran wikija. Od 61 priklopljenih repozitorijev jih 52 ni imelo strani z oznako {{wk:adogit>…}}, zato jih v wikiju preprosto ni bilo mogoče odpreti – obstajali so v skrbništvu in nikjer drugje.

Dejanje ne potrebuje vnaprej pripravljene strani. Prejme imenski prostor priklopa, poišče priklop, projekt prebere iz najdenega zapisa (ne iz ID-ja strani, ki tu o projektu ne pove ničesar) in preveri ACL imenskega prostora priklopa, tako kot vsak drug dostop. Uporabnik, ki brati ne sme, ne dobi prazne strani, temveč pojasnilo in pot naprej: prijavljeni uporabnik lahko zaprosi za dostop, vsi drugi se lahko prijavijo.

Zaslon prikaže projekt, repozitorij, vidnost, vlogo uporabnika in prikazano stanje, pod tem pa izbiro obsega in zavihke Koda, Commiti, Veje in Oznake. Zavihek Commiti se prikaže le, če izvorni sistem zna vrniti zgodovino; Azure DevOps to zna.

Izbira obsega: repozitorij in veja

Prehod na drug repozitorij istega projekta je najpogostejši premik znotraj projekta, zato ne zahteva ovinka prek seznama. Nad zavihki sta dve izbirni polji: eno za repozitorije istega projekta, drugo za veje prikazanega repozitorija.

  • Kar je v izbiri repozitorijev, je preverjeno. Vsak priklop projekta posebej gre skozi

isto preverjanje vidnosti kot na seznamu. Česar račun ne sme videti, v izbiri ni – ni

  zatemnjeno, temveč odsotno: ime v izbiri že pove, da stvar obstaja.
* **Izbira z enim samim vnosom se ne izriše.** Ničesar ne bi mogla spremeniti.
* **Dva ločena obrazca, ne eden.** Sicer bi prehod na drug repozitorij poslal še vejo starega
  repozitorija, rezultat pa bi bilo sporočilo o napaki za stanje, ki ga nihče ni zahteval.
* **Deluje brez skripta.** Oba sta navadna obrazca z gumbom za pošiljanje; rezultat je naslov,
  ki ga je mogoče shraniti kot zaznamek.
* **Pri več kot 200 vejah** izbiro nadomesti povezava na zavihek //Veje//. Okrnjena izbira
  bi zamolčala ravno tisto vejo, ki jo nekdo išče.

Commiti

Zavihek Commiti prikaže zadnje commite prikazanega stanja – istega, ki ga navaja izbira veje nad njim; nad preglednico piše, čigava zgodovina je to. Vsaka vrstica navede kratko obliko commita (celotna vrednost je v opisu orodja), prvo vrstico sporočila, avtorja in čas. Če ima sporočilo še več vrstic, mu sledi oznaka več; če je commit uveljavil kdo drug kot avtor, je to zapisano pod imenom.

  • Koliko commitov se prikaže, določa commits_shown (privzeto 30, največ 100).
  • Listanja ni. Zavihek odgovori na vprašanje, kaj se je tu zgodilo nazadnje; celotna zgodovina

sodi v odjemalca Git.

  • Oznaka commita je besedilo za navajanje, ne povezava. Pogleda za posamezno spremembo

delovni prostor nima, povezava, ki bi pristala na zavrnitvi, pa bi bila lažna obljuba.

  • Če zgodovine ni mogoče prebrati, zavihek to pove, namesto da bi prikazal prazno preglednico.

Veje in oznake

Zavihka Veje in Oznake vodita do seznamov.

Vsaka vrstica navede ime in kratko obliko commita, celotna vrednost je v opisu orodja. Privzeta veja in trenutno prikazano stanje sta označena. Klik vrne na zavihek Koda, vezan na to stanje – stanje je zapisano v naslovu, zato povezava na določeno vejo ostane veljavna.

Repozitorij brez oznak pove, da oznak nima. To je stanje, ne napaka, in se razlikuje od »ni dosegljivo«.

V vgrajenem pogledu ({{wk:adogit>…}}) isti zavihki vodijo na ta zaslon, namesto da bi seznam stlačili v stolpec strani: ta pogled je pogosto širok 15em, seznam vej in oznak pa ne.

Prispevek k raziskovalcu repozitorijev

Paket svoje priklope vpiše kot vir repozitorijev v imenik paketa wkdocore in se tako pojavi v pregledu čez vse projekte. Površina projekta tega paketa ne pozna; vpraša imenik, imenik pa vpraša svoje prijavljene vire.

Vir filtrira sam: vrstica nastane le, če račun priklop sme videti, štiri sporočene zmožnosti – ogled, pridobitev, predlog, pisanje – pa so zmožnosti ravni vidnosti, ne ugibanje. Privzeta veja, jezik in zadnja sprememba ostanejo prazni: da bi jih izpolnili, bi bilo treba za vsako vrstico vprašati izvorni sistem.


Osebni dostopni žetoni

Zunanji odjemalci git se pri posredniku prijavijo kot uporabniki DokuWikija, in sicer z osebnim žetonom; geslo wikija ne sodi v odjemalec git. Vsak prijavljeni uporabnik upravlja svoje žetone na naslovu /doku.php?do=wkdoadogit_tokens, skrbniki pa še v meniju Dostopni žetoni ADO-Git. Shrani se samo zgoščena vrednost; žeton v berljivi obliki se prikaže natanko enkrat, ob izdaji. Vsak žeton se začne s predpono wkg_.

Za clone je potrebna stopnja ACL 2, za push stopnja ACL 4. Pri stopnjah ACL od 4 do 7 so dovoljene samo veje pod refs/heads/users/<prijavno-ime>/. Postopek opisuje Kako klonirati priklopljen repozitorij.

Nastavitve

Ključ Privzeto Učinek
mount_languages de,en,hr,it,sl jezikovni segmenti, v katere se razširi priklop z nadomestno oznako {lang}; na tej namestitvi de,en,sl
repofactsttl 3600 koliko sekund sme raziskovalec repozitorijev znova uporabiti privzeto vejo iz odgovora izvornega sistema; ena poizvedba odgovori za celoten projekt ADO. 0 poizvedbo izklopi, stolpec takrat izgine.
repofactsfailttl 300 koliko sekund se pomni neuspela poizvedba – nedosegljiv izvorni sistem se tako vpraša enkrat na časovno okno, ne ob vsakem ogledu strani
commits_shown 30 število commitov v zavihku Commiti (od 1 do 100)

Drugih nastavitev paket namenoma nima: povezava pride iz wkdoado, pravice iz DokuWikija, priklopi iz shrambe.


Tehnični zapisi (za upravljavce in razvijalce): Zagon posrednika git na prenosnem strežniku · Od kod registracija priklopa dobi besedišče ravni.

Več o tem: datoteka README v repozitoriju wkdoadogit; pregled paketov je v Pregledu DWE.

Gradi na: wkcore (register storitev) · wkdocore (projekt in vloge) · wkdostorage (priklopi in žetoni) · wkdoado (povezava z Azure DevOps) · wksourceview (izvorna koda in predal) · wkfluentui (gradniki in glava dokumenta).

Ne zamenjujte ga z wkdogit, ki prek programa git streže krajevne repozitorije, in to izključno za branje.

Sorodne teme

sl/wiki/dwe/wkdoadogit/reference.txt · Zadnja sprememba: uporabnika 0.0.0.0