Merge remote-tracking branch 'anarcat/dev/decentralised_graphics'

master
Joey Hess 2014-04-18 11:39:34 -04:00
commit a9eb75d120
6 changed files with 3412 additions and 70 deletions

View File

@ -9,11 +9,11 @@
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="493.90625"
height="548.64734"
width="493.02975"
height="542.18921"
id="svg2"
version="1.1"
inkscape:version="0.48.1 r9760"
inkscape:version="0.48.4 r9939"
sodipodi:docname="wiki_edit_flow.svg">
<defs
id="defs4">
@ -195,18 +195,18 @@
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.0885159"
inkscape:cx="281.26331"
inkscape:cy="219.65103"
inkscape:cx="281.27395"
inkscape:cy="314.69374"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
showguides="true"
inkscape:guide-bbox="true"
inkscape:snap-global="true"
inkscape:window-width="1280"
inkscape:window-height="995"
inkscape:window-x="1280"
inkscape:window-y="0"
inkscape:window-width="1438"
inkscape:window-height="872"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1"
fit-margin-top="25"
fit-margin-left="25"
@ -218,7 +218,9 @@
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true" />
snapvisiblegridlinesonly="true"
originx="0.010641754px"
originy="26px" />
</sodipodi:namedview>
<metadata
id="metadata7">
@ -228,7 +230,7 @@
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title></dc:title>
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
@ -236,108 +238,108 @@
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-159.65625,-106.875)">
transform="translate(-159.64561,-139.33311)">
<rect
style="fill:none;stroke:#000000;stroke-width:0.70866144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="rect3866"
width="220.00006"
height="79.999939"
width="442.32111"
height="341.82434"
x="184.99994"
y="142.36218"
y="164.68744"
ry="10"
rx="10" />
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,182.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
d="m 355,222.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="368.57144"
y="225.21931"
y="251.21931"
id="text2995"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan2997"
x="368.57144"
y="225.21931" /></text>
y="251.21931" /></text>
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,322.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
d="m 355,348.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-4"
inkscape:connector-curvature="0" />
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,457.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
d="m 355,483.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-1"
inkscape:connector-curvature="0" />
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,597.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
d="m 355,623.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-5"
inkscape:connector-curvature="0" />
<path
style="opacity:0.48800001;fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 475,597.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
d="m 475,623.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-2"
inkscape:connector-curvature="0" />
<path
style="opacity:0.5;fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 235,597.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
d="m 235,623.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-8"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="386.06738"
y="626.36218"
y="652.36218"
id="text3868"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3870"
x="386.06738"
y="626.36218"
y="652.36218"
style="font-size:20px;text-align:center;text-anchor:middle">working clones</tspan></text>
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="524.37988"
y="437.36218"
y="463.36218"
id="text3874"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3876"
x="524.37988"
y="437.36218"
y="463.36218"
style="font-size:20px;text-align:center;text-anchor:middle">repository</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="525.35156"
y="304.36218"
y="330.36218"
id="text3878"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3880"
x="525.35156"
y="304.36218"
y="330.36218"
style="font-size:20px;text-align:center;text-anchor:middle">srcdir</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="525.1543"
y="165.36218"
y="201.36218"
id="text3882"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3884"
x="525.1543"
y="165.36218"
y="201.36218"
style="font-size:20px;text-align:center;text-anchor:middle">destdir</tspan></text>
<g
id="g5440"
transform="translate(5,25.000003)">
transform="translate(5,51.000003)">
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
@ -352,7 +354,7 @@
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" />
</g>
<g
transform="translate(5,-110)"
transform="translate(5,-84)"
id="g5440-4">
<path
sodipodi:nodetypes="cc"
@ -368,7 +370,7 @@
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" />
</g>
<g
transform="matrix(0.71872744,0.69529193,-0.69529193,0.71872744,353.78964,-104.94206)"
transform="matrix(0.71872744,0.69529193,-0.69529193,0.71872744,353.78964,-78.94206)"
id="g5440-47">
<path
sodipodi:nodetypes="cc"
@ -384,7 +386,7 @@
style="opacity:0.5;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" />
</g>
<g
transform="matrix(-0.71872744,0.69529193,0.69529193,0.71872744,421.21036,-104.94206)"
transform="matrix(-0.71872744,0.69529193,0.69529193,0.71872744,421.21036,-78.94206)"
id="g5440-47-9"
style="opacity:0.5">
<path
@ -402,12 +404,12 @@
</g>
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker5532)"
d="m 380,262.36218 0,-60"
d="m 380,288.36218 0,-60"
id="path5558"
inkscape:connector-curvature="0" />
<g
id="g5810"
transform="translate(0,-9)">
transform="translate(0,17)">
<g
transform="translate(-230,-4.9999974)"
id="g3784-7">
@ -469,7 +471,7 @@
</g>
<g
id="g5824"
transform="translate(0,-9)">
transform="translate(0,17)">
<g
transform="translate(-165,-9.9999974)"
id="g3784-0">
@ -522,7 +524,7 @@
sodipodi:cy="187.36218"
sodipodi:rx="5"
sodipodi:ry="5"
d="m 300,187.36218 a 5,5 0 1 1 -10,0 5,5 0 1 1 10,0 z"
d="m 300,187.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
transform="matrix(1.4,0,0,1.4,-120,-74.944873)" />
</g>
</g>
@ -530,17 +532,17 @@
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="265"
y="211.36218"
y="237.36218"
id="text5806"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5808"
x="265"
y="211.36218"
y="237.36218"
style="font-size:12px">ikiwiki.cgi</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker5532)"
d="m 295,217.36218 c 10,40 25,65 55,85"
d="m 295,243.36218 c 10,40 25,65 55,85"
id="path5834"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
@ -548,157 +550,157 @@
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="351.31982"
y="362.36218"
y="388.36218"
id="text6240"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6242"
x="351.31982"
y="362.36218"
y="388.36218"
style="font-size:14px;text-align:end;writing-mode:lr-tb;text-anchor:end">post-update</tspan><tspan
sodipodi:role="line"
x="351.31982"
y="379.86218"
y="405.86218"
style="font-size:14px;text-align:end;writing-mode:lr-tb;text-anchor:end"
id="tspan6244">hook</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="420"
y="362.36218"
y="388.36218"
id="text6246"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6248"
x="420"
y="362.36218"
y="388.36218"
style="font-size:14px">ikiwiki.cgi</tspan><tspan
sodipodi:role="line"
x="420"
y="379.86218"
y="405.86218"
id="tspan6250"
style="font-size:14px">push</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="382"
y="316.36218"
y="342.36218"
id="text6252"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254"
x="382"
y="316.36218">.git</tspan></text>
y="342.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="383"
y="592.36218"
y="618.36218"
id="text6252-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1"
x="383"
y="592.36218">.git</tspan></text>
y="618.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.3;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="502"
y="591.36218"
y="617.36218"
id="text6252-3-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1-0"
x="502"
y="591.36218">.git</tspan></text>
y="617.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.3;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="263"
y="592.36218"
y="618.36218"
id="text6252-3-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1-1"
x="263"
y="592.36218">.git</tspan></text>
y="618.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="411"
y="456.36218"
y="482.36218"
id="text6252-3-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1-2"
x="411"
y="456.36218">.git</tspan></text>
y="482.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="300"
y="262.36218"
y="288.36218"
id="text6372"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6374"
x="300"
y="262.36218"
y="288.36218"
style="font-size:14px">web-side</tspan><tspan
sodipodi:role="line"
x="300"
y="279.86218"
y="305.86218"
id="tspan6376"
style="font-size:14px">edit</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="410"
y="232.36218"
y="258.36218"
id="text6378"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6380"
x="410"
y="232.36218"
y="258.36218"
style="font-size:14px">automatic</tspan><tspan
sodipodi:role="line"
x="410"
y="249.86218"
y="275.86218"
id="tspan6382"
style="font-size:14px">rebuild</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="406.75635"
y="501.15298"
y="527.15295"
id="text6384"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6386"
x="406.75635"
y="501.15298"
y="527.15295"
style="font-size:14px">git</tspan><tspan
sodipodi:role="line"
x="406.75635"
y="518.65295"
y="544.65295"
id="tspan6388"
style="font-size:14px">pull</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="363.62955"
y="504.39691"
y="530.39691"
id="text6390"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6392"
x="363.62955"
y="504.39691"
y="530.39691"
style="font-size:14px;text-align:end;text-anchor:end">git</tspan><tspan
sodipodi:role="line"
x="363.62955"
y="521.89691"
y="547.89691"
id="tspan6394"
style="font-size:14px;text-align:end;text-anchor:end">push</tspan></text>
</g>

Before

Width:  |  Height:  |  Size: 29 KiB

After

Width:  |  Height:  |  Size: 29 KiB

View File

@ -3,6 +3,8 @@ server located at different hosts. Here's a description for such
a setup, using password-less SSH as a way of communication between
these two hosts.
[[!img separate-webserver.svg size=490x align=right]]
Git server
==========

View File

@ -0,0 +1,716 @@
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Created with Inkscape (http://www.inkscape.org/) -->
<svg
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:cc="http://creativecommons.org/ns#"
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:svg="http://www.w3.org/2000/svg"
xmlns="http://www.w3.org/2000/svg"
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
width="493.26132"
height="546.48431"
id="svg2"
version="1.1"
inkscape:version="0.48.4 r9939"
sodipodi:docname="separate-webserver.svg">
<defs
id="defs4">
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="Arrow2Lend"
style="overflow:visible">
<path
id="path3914"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)"
inkscape:connector-curvature="0" />
</marker>
<marker
inkscape:stockid="Arrow1Lend"
orient="auto"
refY="0"
refX="0"
id="Arrow1Lend"
style="overflow:visible">
<path
id="path3896"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
transform="matrix(-0.8,0,0,-0.8,-10,0)"
inkscape:connector-curvature="0" />
</marker>
<marker
inkscape:stockid="Arrow1Lstart"
orient="auto"
refY="0"
refX="0"
id="Arrow1Lstart"
style="overflow:visible">
<path
id="path3893"
d="M 0,0 5,-5 -12.5,0 5,5 0,0 z"
style="fill-rule:evenodd;stroke:#000000;stroke-width:1pt;marker-start:none"
transform="matrix(0.8,0,0,0.8,10,0)"
inkscape:connector-curvature="0" />
</marker>
<linearGradient
id="linearGradient3767">
<stop
style="stop-color:#efbc00;stop-opacity:1;"
offset="0"
id="stop3769" />
<stop
id="stop3775"
offset="0.93150687"
style="stop-color:#ffcb10;stop-opacity:1;" />
<stop
style="stop-color:#ffffff;stop-opacity:1;"
offset="1"
id="stop3771" />
</linearGradient>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="Arrow2Lend-4"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path3914-9"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="marker5456"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5458"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="Arrow2Lend-3"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path3914-6"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="marker5456-4"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5458-7"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="Arrow2Lend-5"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path3914-92"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="marker5456-3"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5458-78"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="Arrow2Lend-36"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path3914-5"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
<marker
inkscape:stockid="Arrow2Lend"
orient="auto"
refY="0"
refX="0"
id="marker5532"
style="overflow:visible">
<path
inkscape:connector-curvature="0"
id="path5534"
style="font-size:12px;fill-rule:evenodd;stroke-width:0.625;stroke-linejoin:round"
d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
transform="matrix(-1.1,0,0,-1.1,-1.1,0)" />
</marker>
</defs>
<sodipodi:namedview
id="base"
pagecolor="#ffffff"
bordercolor="#666666"
borderopacity="1.0"
inkscape:pageopacity="0.0"
inkscape:pageshadow="2"
inkscape:zoom="1.0885159"
inkscape:cx="281.5055"
inkscape:cy="314.69374"
inkscape:document-units="px"
inkscape:current-layer="layer1"
showgrid="false"
showguides="true"
inkscape:guide-bbox="true"
inkscape:snap-global="true"
inkscape:window-width="1438"
inkscape:window-height="872"
inkscape:window-x="0"
inkscape:window-y="26"
inkscape:window-maximized="1"
fit-margin-top="25"
fit-margin-left="25"
fit-margin-right="25"
fit-margin-bottom="25">
<inkscape:grid
type="xygrid"
id="grid2985"
empspacing="5"
visible="true"
enabled="true"
snapvisiblegridlinesonly="true"
originx="0.24219388px"
originy="26px" />
</sodipodi:namedview>
<metadata
id="metadata7">
<rdf:RDF>
<cc:Work
rdf:about="">
<dc:format>image/svg+xml</dc:format>
<dc:type
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
<dc:title />
</cc:Work>
</rdf:RDF>
</metadata>
<g
inkscape:label="Layer 1"
inkscape:groupmode="layer"
id="layer1"
transform="translate(-159.41406,-135.03802)">
<rect
style="fill:none;stroke:#000000;stroke-width:0.70866144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="rect3866"
width="442.32111"
height="227.90776"
x="184.99994"
y="278.604"
ry="10"
rx="10" />
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,222.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="368.57144"
y="251.21931"
id="text2995"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan2997"
x="368.57144"
y="251.21931" /></text>
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,348.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-4"
inkscape:connector-curvature="0" />
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,483.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-1"
inkscape:connector-curvature="0" />
<path
style="fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 355,623.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-5"
inkscape:connector-curvature="0" />
<path
style="opacity:0.48800001;fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 475,623.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-2"
inkscape:connector-curvature="0" />
<path
style="opacity:0.5;fill:#ffcb14;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
d="m 235,623.36218 55,0 0,-45 -25,0 -5,-5 -20,0 -5,5 z"
id="path2989-8"
inkscape:connector-curvature="0" />
<text
xml:space="preserve"
style="font-size:40px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="386.06738"
y="652.36218"
id="text3868"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3870"
x="386.06738"
y="652.36218"
style="font-size:20px;text-align:center;text-anchor:middle">working clones</tspan></text>
<text
xml:space="preserve"
style="font-size:18px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="524.37988"
y="463.36218"
id="text3874"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3876"
x="524.37988"
y="463.36218"
style="font-size:20px;text-align:center;text-anchor:middle">repository</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="525.35156"
y="330.36218"
id="text3878"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3880"
x="525.35156"
y="330.36218"
style="font-size:20px;text-align:center;text-anchor:middle">srcdir</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:center;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:middle;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="525.1543"
y="201.36218"
id="text3882"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan3884"
x="525.1543"
y="201.36218"
style="font-size:20px;text-align:center;text-anchor:middle">destdir</tspan></text>
<g
id="g5440"
transform="translate(5,51.000003)">
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3886"
d="m 370,512.36218 c -5,-24.99999 -5,-44.99999 0,-70"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:none;marker-mid:none;marker-end:url(#Arrow2Lend)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3888"
d="m 390,442.36218 c 5,25 5,45 0,70"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" />
</g>
<g
transform="translate(5,-84)"
id="g5440-4">
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3886-8"
d="m 370,512.36218 c -5,-24.99999 -5,-44.99999 0,-70"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:none;marker-mid:none;marker-end:url(#Arrow2Lend)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3888-9"
d="m 390,442.36218 c 5,25 5,45 0,70"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" />
</g>
<g
transform="matrix(0.71872744,0.69529193,-0.69529193,0.71872744,353.78964,-78.94206)"
id="g5440-47">
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3886-3"
d="m 370,512.36218 c -5,-24.99999 -0.0778,-66.9912 7.34379,-88.08431"
style="opacity:0.5;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:none;marker-mid:none;marker-end:url(#Arrow2Lend)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3888-6"
d="m 391.48399,424.51223 c 5,25 6.0155,63.74804 -1.48399,87.84995"
style="opacity:0.5;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" />
</g>
<g
transform="matrix(-0.71872744,0.69529193,0.69529193,0.71872744,421.21036,-78.94206)"
id="g5440-47-9"
style="opacity:0.5">
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3886-3-3"
d="m 370,512.36218 c -5,-24.99999 -0.0778,-66.9912 7.34379,-88.08431"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-start:none;marker-mid:none;marker-end:url(#Arrow2Lend)" />
<path
sodipodi:nodetypes="cc"
inkscape:connector-curvature="0"
id="path3888-6-3"
d="m 391.48399,424.51223 c 5,25 6.0155,63.74804 -1.48399,87.84995"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#Arrow2Lend)" />
</g>
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker5532)"
d="m 380,288.36218 0,-60"
id="path5558"
inkscape:connector-curvature="0" />
<g
id="g5810"
transform="translate(0,17)">
<g
transform="translate(-230,-4.9999974)"
id="g3784-7">
<g
id="g3779-37">
<path
inkscape:connector-curvature="0"
id="path2993-5"
d="m 440,177.36218 10,0 0,-10"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccc"
inkscape:connector-curvature="0"
id="path2991-3"
d="m 440,177.36218 0,40 35,0 0,-50 -25,0 z"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path3777-8"
d="m 440,177.36218 10,0 0,-10"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
</g>
<g
transform="translate(-235,-9.9999974)"
id="g3784">
<g
id="g3779">
<path
inkscape:connector-curvature="0"
id="path2993"
d="m 440,177.36218 10,0 0,-10"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccc"
inkscape:connector-curvature="0"
id="path2991"
d="m 440,177.36218 0,40 35,0 0,-50 -25,0 z"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path3777"
d="m 440,177.36218 10,0 0,-10"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
</g>
<text
sodipodi:linespacing="125%"
id="text5762"
y="176.55017"
x="206.62401"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
xml:space="preserve"><tspan
style="font-size:8px"
y="176.55017"
x="206.62401"
id="tspan5764"
sodipodi:role="line">&lt;html&gt;</tspan></text>
</g>
<g
id="g5824"
transform="translate(0,17)">
<g
transform="translate(-165,-9.9999974)"
id="g3784-0">
<g
id="g3779-3">
<path
inkscape:connector-curvature="0"
id="path2993-2"
d="m 440,177.36218 10,0 0,-10"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
sodipodi:nodetypes="cccccc"
inkscape:connector-curvature="0"
id="path2991-8"
d="m 440,177.36218 0,40 35,0 0,-50 -25,0 z"
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
<path
inkscape:connector-curvature="0"
id="path3777-7"
d="m 440,177.36218 10,0 0,-10"
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
</g>
</g>
<g
transform="matrix(0.74161576,0,0,0.74161576,75.250882,53.354937)"
id="g5772">
<path
sodipodi:type="star"
style="fill:#939393;fill-opacity:1;stroke:#939393;stroke-width:0.70866144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5768"
sodipodi:sides="13"
sodipodi:cx="295"
sodipodi:cy="187.36218"
sodipodi:r1="10.889445"
sodipodi:r2="14.142136"
sodipodi:arg1="-2.3561945"
sodipodi:arg2="-2.1145335"
inkscape:flatsided="false"
inkscape:rounded="0.36"
inkscape:randomized="0"
d="m 287.3,179.66218 c 1.12496,-1.12496 -0.97775,-3.57952 0.38374,-4.40257 1.36149,-0.82305 2.55772,2.1795 4.07662,1.70619 1.5189,-0.47331 0.79773,-3.62389 2.38576,-3.71995 1.58803,-0.0961 1.25188,3.11848 2.81676,3.40526 1.56487,0.28677 2.39046,-2.83808 3.84123,-2.18514 1.45078,0.65294 -0.34074,3.34306 0.91162,4.32422 1.25235,0.98116 3.43557,-1.40209 4.41673,-0.14973 0.98116,1.25236 -1.85532,2.80178 -1.20238,4.25255 0.65294,1.45078 3.69363,0.35511 3.98041,1.91998 0.28677,1.56488 -2.94485,1.61865 -3.04091,3.20668 -0.0961,1.58803 3.10552,2.03094 2.63221,3.54984 -0.47331,1.5189 -3.35976,0.0647 -4.18281,1.42619 -0.82305,1.3615 1.80598,3.24152 0.68102,4.36648 -1.12496,1.12496 -3.00498,-1.50407 -4.36648,-0.68101 -1.36149,0.82305 0.0927,3.7095 -1.42619,4.1828 -1.5189,0.47331 -1.96181,-2.72827 -3.54984,-2.63221 -1.58803,0.0961 -1.64181,3.32768 -3.20668,3.04091 -1.56488,-0.28678 -0.4692,-3.32746 -1.91998,-3.9804 -1.45077,-0.65294 -3.00019,2.18353 -4.25255,1.20237 -1.25236,-0.98116 1.13089,-3.16437 0.14973,-4.41673 -0.98116,-1.25236 -3.67128,0.53916 -4.32422,-0.91161 -0.65294,-1.45078 2.47191,-2.27636 2.18513,-3.84124 -0.28677,-1.56488 -3.50131,-1.22873 -3.40525,-2.81676 0.096,-1.58803 3.24664,-0.86686 3.71995,-2.38576 0.47331,-1.5189 -2.52925,-2.71513 -1.70619,-4.07662 0.82305,-1.36149 3.27761,0.74122 4.40257,-0.38374 z"
inkscape:transform-center-x="-0.68364368"
inkscape:transform-center-y="0.68364368"
transform="translate(-2,0)" />
<path
sodipodi:type="arc"
style="fill:#ffffff;fill-opacity:1;stroke:#939393;stroke-width:0.70866144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="path5770"
sodipodi:cx="295"
sodipodi:cy="187.36218"
sodipodi:rx="5"
sodipodi:ry="5"
d="m 300,187.36218 c 0,2.76143 -2.23858,5 -5,5 -2.76142,0 -5,-2.23857 -5,-5 0,-2.76142 2.23858,-5 5,-5 2.76142,0 5,2.23858 5,5 z"
transform="matrix(1.4,0,0,1.4,-120,-74.944873)" />
</g>
</g>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="265"
y="237.36218"
id="text5806"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan5808"
x="265"
y="237.36218"
style="font-size:12px">ikiwiki.cgi</tspan></text>
<path
style="fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;marker-end:url(#marker5532)"
d="m 295,243.36218 c 10,40 25,65 55,85"
id="path5834"
inkscape:connector-curvature="0"
sodipodi:nodetypes="cc" />
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="351.31982"
y="388.36218"
id="text6240"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6242"
x="351.31982"
y="388.36218"
style="font-size:14px;text-align:end;writing-mode:lr-tb;text-anchor:end">post-update</tspan><tspan
sodipodi:role="line"
x="351.31982"
y="405.86218"
style="font-size:14px;text-align:end;writing-mode:lr-tb;text-anchor:end"
id="tspan6244">hook</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="420"
y="388.36218"
id="text6246"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6248"
x="420"
y="388.36218"
style="font-size:14px">ikiwiki.cgi</tspan><tspan
sodipodi:role="line"
x="420"
y="405.86218"
id="tspan6250"
style="font-size:14px">push</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="382"
y="342.36218"
id="text6252"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254"
x="382"
y="342.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="383"
y="618.36218"
id="text6252-3"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1"
x="383"
y="618.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.3;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="502"
y="617.36218"
id="text6252-3-1"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1-0"
x="502"
y="617.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;opacity:0.3;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="263"
y="618.36218"
id="text6252-3-6"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1-1"
x="263"
y="618.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="411"
y="482.36218"
id="text6252-3-0"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6254-1-2"
x="411"
y="482.36218">.git</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="300"
y="288.36218"
id="text6372"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6374"
x="300"
y="288.36218"
style="font-size:14px">web-side</tspan><tspan
sodipodi:role="line"
x="300"
y="305.86218"
id="tspan6376"
style="font-size:14px">edit</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="410"
y="258.36218"
id="text6378"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6380"
x="410"
y="258.36218"
style="font-size:14px">automatic</tspan><tspan
sodipodi:role="line"
x="410"
y="275.86218"
id="tspan6382"
style="font-size:14px">rebuild</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="406.75635"
y="527.15295"
id="text6384"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6386"
x="406.75635"
y="527.15295"
style="font-size:14px">git</tspan><tspan
sodipodi:role="line"
x="406.75635"
y="544.65295"
id="tspan6388"
style="font-size:14px">pull</tspan></text>
<text
xml:space="preserve"
style="font-size:16px;font-style:normal;font-weight:normal;text-align:end;line-height:125%;letter-spacing:0px;word-spacing:0px;text-anchor:end;fill:#000000;fill-opacity:1;stroke:none;font-family:Bitstream Vera Sans"
x="363.62955"
y="530.39691"
id="text6390"
sodipodi:linespacing="125%"><tspan
sodipodi:role="line"
id="tspan6392"
x="363.62955"
y="530.39691"
style="font-size:14px;text-align:end;text-anchor:end">git</tspan><tspan
sodipodi:role="line"
x="363.62955"
y="547.89691"
id="tspan6394"
style="font-size:14px;text-align:end;text-anchor:end">push</tspan></text>
<rect
style="fill:none;stroke:#000000;stroke-width:0.70866144;stroke-linecap:round;stroke-linejoin:round;stroke-miterlimit:4;stroke-opacity:1;stroke-dasharray:none;stroke-dashoffset:0"
id="rect3866-3"
width="442.32111"
height="84.593353"
x="184.76839"
y="160.39235"
ry="10"
rx="10" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 30 KiB

View File

@ -5,6 +5,53 @@ git, let's explore some possibilities for distributed wikis.
[[!toc levels=2]]
## Overview
There are three possible level of decentralisation:
0. [[default setup|rcs/git]], no decentralisation
1. [[a simple HTML mirror|tips/Git_repository_and_web_server_on_different_hosts/]]
2. separate `srcdir`, still requires a central bare repo - uses [[plugin/pinger]]
3. completely distinct ikiwiki installs, synchronised with
[[plugin/gitpush]]
Here's a graphic overview of those:
### Default setup - one central server
[[!img rcs/git/wiki-edit-flow.svg size=490x align=center]]
In the default setup, all the resources are stored on the central
servers. Users can still clone and edit the git repo by hand and
contribute by git, but otherwise all the changes happen on a single
web interface.
### Separate webserver and git repository
[[!img tips/Git_repository_and_web_server_on_different_hosts/separate-webserver.svg align=center]]
In the configuration described in
[[tips/Git_repository_and_web_server_on_different_hosts]], the
webserver is separate from the git repository. The webserver part
hosts the HTML files, the ikiwiki [[cgi]] but everything else is on
the git server.
### Decentralised pinger setup
[[!img ping-setup.svg align=center]]
In this configuration, the mirrors all have their own `srcdir`, but
still need to push and pull from the same central bare git repo. The
[[plugins/pinger]] plugin is used to ping the mirrors from the central
server on edits.
### Fully decentralised setup
[[!img .svg align=center]]
In this configuration, each wiki is fully independent and pushes its
changes to other wikis using the [[plugins/gitpush]] plugin.
## a wiki mirror
The simplest possibility is setting up a mirror. If a wiki exposes its git

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 64 KiB

File diff suppressed because it is too large Load Diff

After

Width:  |  Height:  |  Size: 45 KiB