From 3c6fc46be7fc8ade2bd18a43663a71a460917901 Mon Sep 17 00:00:00 2001 From: Thibaud Duhautbout Date: Sun, 14 Oct 2018 16:27:07 +0200 Subject: [PATCH] Concept de branche, divergence + illustrations --- imgs/branches.eps | 445 ++++++++++++++++++++++++++++++++++++++++++ imgs/divergence.png | Bin 0 -> 22795 bytes imgs/divergence_2.png | Bin 0 -> 15407 bytes presentation.tex | 83 ++++++++ 4 files changed, 528 insertions(+) create mode 100644 imgs/branches.eps create mode 100644 imgs/divergence.png create mode 100644 imgs/divergence_2.png diff --git a/imgs/branches.eps b/imgs/branches.eps new file mode 100644 index 0000000..224da81 --- /dev/null +++ b/imgs/branches.eps @@ -0,0 +1,445 @@ +%!PS-Adobe-3.0 EPSF-3.0 +%%Creator: cairo 1.15.12 (http://cairographics.org) +%%CreationDate: Sun Oct 14 15:25:07 2018 +%%Pages: 1 +%%DocumentData: Clean7Bit +%%LanguageLevel: 2 +%%BoundingBox: 55 577 547 769 +%%EndComments +%%BeginProlog +50 dict begin +/q { gsave } bind def +/Q { grestore } bind def +/cm { 6 array astore concat } bind def +/w { setlinewidth } bind def +/J { setlinecap } bind def +/j { setlinejoin } bind def +/M { setmiterlimit } bind def +/d { setdash } bind def +/m { moveto } bind def +/l { lineto } bind def +/c { curveto } bind def +/h { closepath } bind def +/re { exch dup neg 3 1 roll 5 3 roll moveto 0 rlineto + 0 exch rlineto 0 rlineto closepath } bind def +/S { stroke } bind def +/f { fill } bind def +/f* { eofill } bind def +/n { newpath } bind def +/W { clip } bind def +/W* { eoclip } bind def +/BT { } bind def +/ET { } bind def +/BDC { mark 3 1 roll /BDC pdfmark } bind def +/EMC { mark /EMC pdfmark } bind def +/cairo_store_point { /cairo_point_y exch def /cairo_point_x exch def } def +/Tj { show currentpoint cairo_store_point } bind def +/TJ { + { + dup + type /stringtype eq + { show } { -0.001 mul 0 cairo_font_matrix dtransform rmoveto } ifelse + } forall + currentpoint cairo_store_point +} bind def +/cairo_selectfont { cairo_font_matrix aload pop pop pop 0 0 6 array astore + cairo_font exch selectfont cairo_point_x cairo_point_y moveto } bind def +/Tf { pop /cairo_font exch def /cairo_font_matrix where + { pop cairo_selectfont } if } bind def +/Td { matrix translate cairo_font_matrix matrix concatmatrix dup + /cairo_font_matrix exch def dup 4 get exch 5 get cairo_store_point + /cairo_font where { pop cairo_selectfont } if } bind def +/Tm { 2 copy 8 2 roll 6 array astore /cairo_font_matrix exch def + cairo_store_point /cairo_font where { pop cairo_selectfont } if } bind def +/g { setgray } bind def +/rg { setrgbcolor } bind def +/d1 { setcachedevice } bind def +/cairo_data_source { + CairoDataIndex CairoData length lt + { CairoData CairoDataIndex get /CairoDataIndex CairoDataIndex 1 add def } + { () } ifelse +} def +/cairo_flush_ascii85_file { cairo_ascii85_file status { cairo_ascii85_file flushfile } if } def +/cairo_image { image cairo_flush_ascii85_file } def +/cairo_imagemask { imagemask cairo_flush_ascii85_file } def +%%EndProlog +%%BeginSetup +%%BeginResource: font DejaVuSans +11 dict begin +/FontType 42 def +/FontName /DejaVuSans def +/PaintType 0 def +/FontMatrix [ 1 0 0 1 0 0 ] def +/FontBBox [ 0 0 0 0 ] def +/Encoding 256 array def +0 1 255 { Encoding exch /.notdef put } for +Encoding 48 /zero put +Encoding 49 /one put +Encoding 50 /two put +Encoding 51 /three put +Encoding 52 /four put +Encoding 53 /five put +Encoding 54 /six put +Encoding 55 /seven put +Encoding 67 /C put +/CharStrings 10 dict dup begin +/.notdef 0 def +/C 1 def +/zero 2 def +/one 3 def +/two 4 def +/three 5 def +/four 6 def +/five 7 def +/six 8 def +/seven 9 def +end readonly def +/sfnts [ +<0001000000090080000300106376742000691d3900000734000001fe6670676d7134766a0000 +0934000000ab676c7966d86d4c6f0000009c0000069868656164085da0a7000009e000000036 +686865610d9f077700000a1800000024686d7478331b05ac00000a3c000000286c6f63610000 +212400000a640000002c6d6178700477067100000a9000000020707265703b07f10000000ab0 +0000056800020066fe96046605a400030007001a400c04fb0006fb0108057f0204002fc4d4ec +310010d4ecd4ec301311211125211121660400fc73031bfce5fe96070ef8f272062900010073 +ffe3052705f000190036401a0da10eae0a951101a100ae04951791118c1a07190d003014101a +10fcec32ec310010e4f4ecf4ec10eef6ee30b40f1b1f1b02015d01152e012320001110002132 +3637150e01232000111000213216052766e782ff00fef00110010082e7666aed84feadfe7a01 +86015386ed0562d55f5efec7fed8fed9fec75e5fd34848019f01670168019f47000000020087 +ffe3048f05f0000b00170023401306a01200a00c91128c18091c0f1e031c151b1810fcecf4ec +310010e4f4ec10ee30012202111012333212111002273200111000232200111000028b9c9d9d +9c9d9d9d9dfb0109fef7fbfbfef701090550fecdfeccfecdfecd0133013301340133a0fe73fe +86fe87fe73018d0179017a018d00000100e10000045a05d5000a004040154203a00402a00581 +0700a009081f061c03001f010b10d44bb00f5458b9000100403859ecc4fcec31002fec32f4ec +d4ec304b5358592201b40f030f04025d3721110535253311211521fe014afe990165ca014afc +a4aa047348b848fad5aa0000000100960000044a05f0001c009e4027191a1b03181c11050400 +110505044210a111940da014910400a00200100a02010a1c171003061d10fc4bb015544bb016 +545b4bb014545b58b90003ffc03859c4d4ecc0c011123931002fec32f4ecf4ec304b53580710 +05ed0705ed01b01c1011173959220140325504560556077a047a05761b87190704000419041a +041b051c74007606751a731b741c82008619821a821b821ca800a81b115d005d252115213536 +00373e0135342623220607353e01333204151406070600018902c1fc4c73018d33614da7865f +d3787ad458e80114455b19fef4aaaaaa7701913a6d974977964243cc3132e8c25ca5701dfeeb +00000001009cffe3047305f000280070402e0015130a86091f862013a0150da00993061ca020 +932391068c15a329161c13000314191c2620101c03141f09062910fc4bb016544bb014545b58 +b90009ffc03859c4c4d4ecf4ec11173939310010ece4f4e4ec10e6ee10ee10ee10ee11123930 +014009641e611f6120642104005d011e0115140421222627351e013332363534262b01353332 +3635342623220607353e01333204151406033f91a3fed0fee85ec76a54c86dbec7b9a5aeb695 +9ea39853be7273c959e6010c8e03251fc490ddf22525c33132968f8495a67770737b2426b420 +20d1b27cab0000020064000004a405d50002000d0081401d010d030d0003030d4200030b07a0 +0501038109010c0a001c0608040c0e10dc4bb00b544bb00d545b58b9000cffc03859d43cc4ec +32113931002fe4d43cec321239304b5358071004c9071005c9592201402a0b002a0048005900 +690077008a000716012b0026012b0336014e014f0c4f0d5601660175017a0385010d5d005d09 +012103331133152311231121350306fe0201fe35fed5d5c9fd5e0525fce303cdfc33a8fea001 +60c300000001009effe3046405d5001d005e4023041a071186101d1aa00714a010890d02a000 +810d8c07a41e171c010a031c000a10061e10fc014bb016544bb014545b58b90010ffc038594b +b00f5458b9001000403859c4d4ec10c4ee310010e4e4f4ec10e6ee10fec410ee111239301321 +1521113e0133320015140021222627351e0133323635342623220607dd0319fda02c582cfa01 +24fed4feef5ec3685ac06badcacaad51a15405d5aafe920f0ffeeeeaf1fef52020cb3130b69c +9cb6242600000002008fffe3049605f0000b0024005840241306000d860c00a01606a01c16a5 +10a00c8922911c8c250c22091c191e131c03211f1b2510fcececf4ece4310010e4f4e4fce410 +ee10ee10ee111239304014cb00cb01cd02cd03cd04cb05cb0607a41eb21e025d015d01220615 +141633323635342601152e01232202033e0133320015140023200011100021321602a4889f9f +88889f9f01094c9b4cc8d30f3bb26be10105fef0e2fefdfeee0150011b4c9b033bbaa2a1bbbb +a1a2ba0279b82426fef2feef575dfeefebe6feea018d0179016201a51e000000000100a80000 +046805d5000600634018051102030203110405044205a0008103050301040100060710fcccc4 +11393931002ff4ec304b5358071005ed071005ed5922014bb0165458bd000700400001000700 +07ffc03811373859401258020106031a05390548056703b000b006075d005d13211501230121 +a803c0fde2d301fefd3305d556fa81052b000000013500b800cb00cb00c100aa009c01a600b8 +00660000007100cb00a002b20085007500b800c301cb0189022d00cb00a600f000d300aa0087 +00cb03aa0400014a003300cb000000d9050200f4015400b4009c01390114013907060400044e +04b4045204b804e704cd0037047304cd04600473013303a2055605a60556053903c5021200c9 +001f00b801df007300ba03e9033303bc0444040e00df03cd03aa00e503aa0404000000cb008f +00a4007b00b80014016f007f027b0252008f00c705cd009a009a006f00cb00cd019e01d300f0 +00ba018300d5009803040248009e01d500c100cb00f600830354027f00000333026600d300c7 +00a400cd008f009a0073040005d5010a00fe022b00a400b4009c00000062009c0000001d032d +05d505d505d505f0007f007b005400a406b80614072301d300b800cb00a601c301ec069300a0 +00d3035c037103db0185042304a80448008f0139011401390360008f05d5019a061407230666 +0179046004600460047b009c00000277046001aa00e904600762007b00c5007f027b000000b4 +025205cd006600bc00660077061000cd013b01850389008f007b0000001d00cd074a042f009c +009c0000077d006f0000006f0335006a006f007b00ae00b2002d0396008f027b00f600830354 +063705f6008f009c04e10266008f018d02f600cd03440029006604ee00730000140000960000 +b707060504030201002c2010b002254964b040515820c859212d2cb002254964b040515820c8 +59212d2c20100720b00050b00d7920b8ffff5058041b0559b0051cb0032508b0042523e120b0 +0050b00d7920b8ffff5058041b0559b0051cb0032508e12d2c4b505820b0fd454459212d2cb0 +02254560442d2c4b5358b00225b0022545445921212d2c45442d2cb00225b0022549b00525b0 +05254960b0206368208a108a233a8a10653a2d000001000000025999578e32845f0f3cf5001f +080000000000d17dfdf400000000d17dfdf4f7d6fc4c0e5909dc000000080000000100000000 +00010000076dfe1d00000efef7d6fa510e5900010000000000000000000000000000000a04cd +00660596007305170087051700e1051700960517009c051700640517009e0517008f051700a8 +0000000000000044000000dc00000160000001d0000002d0000003b800000474000005340000 +060c0000069800010000000a0354002b0068000c000200100099000800000415021600080004 +b8028040fffbfe03fa1403f92503f83203f79603f60e03f5fe03f4fe03f32503f20e03f19603 +f02503ef8a4105effe03ee9603ed9603ecfa03ebfa03eafe03e93a03e84203e7fe03e63203e5 +e45305e59603e48a4105e45303e3e22f05e3fa03e22f03e1fe03e0fe03df3203de1403dd9603 +dcfe03db1203da7d03d9bb03d8fe03d68a4105d67d03d5d44705d57d03d44703d3d21b05d3fe +03d21b03d1fe03d0fe03cffe03cefe03cd9603cccb1e05ccfe03cb1e03ca3203c9fe03c68511 +05c61c03c51603c4fe03c3fe03c2fe03c1fe03c0fe03bffe03befe03bdfe03bcfe03bbfe03ba +1103b9862505b9fe03b8b7bb05b8fe03b7b65d05b7bb03b78004b6b52505b65d40ff03b64004 +b52503b4fe03b39603b2fe03b1fe03b0fe03affe03ae6403ad0e03acab2505ac6403abaa1205 +ab2503aa1203a98a4105a9fa03a8fe03a7fe03a6fe03a51203a4fe03a3a20e05a33203a20e03 +a16403a08a4105a096039ffe039e9d0c059efe039d0c039c9b19059c64039b9a10059b19039a +1003990a0398fe0397960d0597fe03960d03958a410595960394930e05942803930e0392fa03 +9190bb0591fe03908f5d0590bb039080048f8e25058f5d038f40048e25038dfe038c8b2e058c +fe038b2e038a8625058a410389880b05891403880b0387862505876403868511058625038511 +0384fe038382110583fe0382110381fe0380fe037ffe0340ff7e7d7d057efe037d7d037c6403 +7b5415057b25037afe0379fe03780e03770c03760a0375fe0374fa0373fa0372fa0371fa0370 +fe036ffe036efe036c21036bfe036a1142056a530369fe03687d036711420566fe0365fe0364 +fe0363fe0362fe03613a0360fa035e0c035dfe035bfe035afe0359580a0559fa03580a035716 +190557320356fe035554150555420354150353011005531803521403514a130551fe03500b03 +4ffe034e4d10054efe034d10034cfe034b4a13054bfe034a4910054a1303491d0d0549100348 +0d0347fe0346960345960344fe0343022d0543fa0342bb03414b0340fe033ffe033e3d12053e +14033d3c0f053d12033c3b0d053c40ff0f033b0d033afe0339fe033837140538fa0337361005 +37140336350b05361003350b03341e03330d0332310b0532fe03310b03302f0b05300d032f0b +032e2d09052e10032d09032c32032b2a25052b64032a2912052a250329120328272505284103 +27250326250b05260f03250b0324fe0323fe03220f03210110052112032064031ffa031e1d0d +051e64031d0d031c1142051cfe031bfa031a42031911420519fe031864031716190517fe0316 +01100516190315fe0314fe0313fe031211420512fe0311022d05114203107d030f64030efe03 +0d0c16050dfe030c0110050c16030bfe030a100309fe0308022d0508fe030714030664030401 +100504fe03401503022d0503fe0302011005022d0301100300fe0301b80164858d012b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b002b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b +2b2b2b2b2b2b2b2b2b2b2b2b2b2b2b1d00> +] def +/f-0-0 currentdict end definefont pop +%%EndResource +%%EndSetup +%%Page: 1 1 +%%BeginPageSetup +%%PageBoundingBox: 55 577 547 769 +%%EndPageSetup +q 55 577 492 192 rectclip +1 0 0 -1 0 842 cm q +0 g +0.751181 w +0 J +0 j +[] 0.0 d +4 M q 1 0 0 1 0 0 cm +94.926 143.805 m 120.52 143.805 l S Q +102.438 143.805 m 105.441 140.801 l 94.926 143.805 l 105.441 146.809 l +h +102.438 143.805 m f* +0.80126 w +q 1 0 0 1 0 0 cm +102.438 143.805 m 105.441 140.801 l 94.926 143.805 l 105.441 146.809 l +h +102.438 143.805 m S Q +0.75 w +q 1 0 0 1 0 0 cm +159.918 143.805 m 186.242 93.73 l S Q +163.406 137.168 m 162.148 133.113 l 159.918 143.805 l 167.457 135.906 l + h +163.406 137.168 m f* +0.708086 w +q 0.525796 -1 1 0.525796 0 0 cm +-40.15 184.517 m -37.491 181.861 l -46.786 184.518 l -37.493 187.171 l +h +-40.15 184.517 m S Q +0.75 w +q 1 0 0 1 0 0 cm +159.918 143.805 m 251.133 193.879 l S Q +166.492 147.414 m 170.562 146.227 l 159.918 143.805 l 167.676 151.488 l + h +166.492 147.414 m f* +0.701283 w +q 1 0.548952 -0.548952 1 0 0 cm +190.122 43.046 m 192.749 40.417 l 183.548 43.046 l 192.751 45.678 l h +190.122 43.046 m S Q +0.75 w +q 1 0 0 1 0 0 cm +290.527 193.879 m 314.762 243.949 l S Q +293.793 200.629 m 297.801 202.023 l 290.527 193.879 l 292.402 204.637 l + h +293.793 200.629 m f* +0.720092 w +q 0.483996 1 -1 0.483996 0 0 cm +277.758 -159.359 m 280.46 -162.06 l 271.009 -159.36 l 280.46 -156.661 l + h +277.758 -159.359 m S Q +0.75 w +q 1 0 0 1 0 0 cm +290.527 193.879 m 379.09 193.879 l S Q +298.027 193.879 m 301.027 190.879 l 290.527 193.879 l 301.027 196.879 l + h +298.027 193.879 m f* +0.8 w +q 1 0 0 1 0 0 cm +298.027 193.879 m 301.027 190.879 l 290.527 193.879 l 301.027 196.879 l + h +298.027 193.879 m S Q +0.75 w +q 1 0 0 1 0 0 cm +354.156 243.949 m 443.07 243.949 l S Q +361.656 243.949 m 364.656 240.949 l 354.156 243.949 l 364.656 246.949 l + h +361.656 243.949 m f* +0.8 w +q 1 0.0000000318812 -0.0000000318812 1 0 0 cm +361.656 243.949 m 364.656 240.949 l 354.156 243.949 l 364.656 246.949 l + h +361.656 243.949 m S Q +0.75 w +q 1 0 0 1 0 0 cm +415.332 193.879 m 507.051 193.879 l S Q +422.832 193.879 m 425.832 190.879 l 415.332 193.879 l 425.832 196.879 l + h +422.832 193.879 m f* +0.8 w +q 1 0 0 1 0 0 cm +422.832 193.879 m 425.832 190.879 l 415.332 193.879 l 425.832 196.879 l + h +422.832 193.879 m S Q +0.751181 w +q 1 0 0 1 0 0 cm +482.469 243.949 m 507.051 193.879 l S Q +485.777 237.207 m 484.406 233.188 l 482.469 243.949 l 489.797 235.836 l + h +485.777 237.207 m f* +0.719249 w +q 0.490967 -1 1 0.490967 0 0 cm +1.042 485.266 m 3.739 482.571 l -5.699 485.267 l 3.737 487.962 l h +1.042 485.266 m S Q +0.905882 0.764706 0.658824 rg +75.227 163.504 m 64.348 163.504 55.531 154.684 55.531 143.805 c 55.531 +132.926 64.348 124.105 75.227 124.105 c 86.105 124.105 94.926 132.926 94.926 + 143.805 c 94.926 154.684 86.105 163.504 75.227 163.504 c h +75.227 163.504 m f +0 g +0.75 w +q 0 1 -1 0 0 0 cm +163.504 -75.227 m 163.504 -64.348 154.684 -55.531 143.805 -55.531 c 132.926 + -55.531 124.105 -64.348 124.105 -75.227 c 124.105 -86.105 132.926 -94.926 + 143.805 -94.926 c 154.684 -94.926 163.504 -86.105 163.504 -75.227 c h +163.504 -75.227 m S Q +BT +19.999999 0 0 -19.999999 61.976207 151.084951 Tm +/f-0-0 1 Tf +(C0)Tj +ET +0.905882 0.764706 0.658824 rg +140.219 163.504 m 129.34 163.504 120.52 154.684 120.52 143.805 c 120.52 + 132.926 129.34 124.105 140.219 124.105 c 151.098 124.105 159.918 132.926 + 159.918 143.805 c 159.918 154.684 151.098 163.504 140.219 163.504 c h +140.219 163.504 m f +0 g +q 0 1 -1 0 0 0 cm +163.504 -140.219 m 163.504 -129.34 154.684 -120.52 143.805 -120.52 c 132.926 + -120.52 124.105 -129.34 124.105 -140.219 c 124.105 -151.098 132.926 -159.918 + 143.805 -159.918 c 154.684 -159.918 163.504 -151.098 163.504 -140.219 c + h +163.504 -140.219 m S Q +BT +19.999999 0 0 -19.999999 126.966172 151.084951 Tm +/f-0-0 1 Tf +(C1)Tj +ET +0.905882 0.239216 0.658824 rg +205.941 113.43 m 195.062 113.43 186.242 104.609 186.242 93.73 c 186.242 + 82.852 195.062 74.035 205.941 74.035 c 216.82 74.035 225.641 82.852 225.641 + 93.73 c 225.641 104.609 216.82 113.43 205.941 113.43 c h +205.941 113.43 m f +0 g +q 0 1 -1 0 0 0 cm +113.43 -205.941 m 113.43 -195.062 104.609 -186.242 93.73 -186.242 c 82.852 + -186.242 74.035 -195.062 74.035 -205.941 c 74.035 -216.82 82.852 -225.641 + 93.73 -225.641 c 104.609 -225.641 113.43 -216.82 113.43 -205.941 c h +113.43 -205.941 m S Q +BT +19.999999 0 0 -19.999999 193.027041 101.012348 Tm +/f-0-0 1 Tf +(C2)Tj +ET +0.388235 0.764706 0.658824 rg +270.828 213.574 m 259.949 213.574 251.133 204.758 251.133 193.879 c 251.133 + 183 259.949 174.18 270.828 174.18 c 281.707 174.18 290.527 183 290.527 +193.879 c 290.527 204.758 281.707 213.574 270.828 213.574 c h +270.828 213.574 m f +0 g +q 0 1 -1 0 0 0 cm +213.574 -270.828 m 213.574 -259.949 204.758 -251.133 193.879 -251.133 c + 183 -251.133 174.18 -259.949 174.18 -270.828 c 174.18 -281.707 183 -290.527 + 193.879 -290.527 c 204.758 -290.527 213.574 -281.707 213.574 -270.828 c + h +213.574 -270.828 m S Q +BT +19.999999 0 0 -19.999999 257.713903 201.157618 Tm +/f-0-0 1 Tf +(C3)Tj +ET +0.227451 0.611765 0.847059 rg +334.809 263.648 m 323.93 263.648 315.109 254.828 315.109 243.949 c 315.109 + 233.07 323.93 224.254 334.809 224.254 c 345.688 224.254 354.508 233.07 +354.508 243.949 c 354.508 254.828 345.688 263.648 334.809 263.648 c h +334.809 263.648 m f +0 g +q 0 1 -1 0 0 0 cm +263.648 -334.809 m 263.648 -323.93 254.828 -315.109 243.949 -315.109 c +233.07 -315.109 224.254 -323.93 224.254 -334.809 c 224.254 -345.688 233.07 + -354.508 243.949 -354.508 c 254.828 -354.508 263.648 -345.688 263.648 -334.809 + c h +263.648 -334.809 m S Q +BT +19.999999 0 0 -19.999999 321.454571 251.230268 Tm +/f-0-0 1 Tf +(C4)Tj +ET +0.388235 0.764706 0.658824 rg +398.789 213.574 m 387.91 213.574 379.09 204.758 379.09 193.879 c 379.09 + 183 387.91 174.18 398.789 174.18 c 409.668 174.18 418.488 183 418.488 193.879 + c 418.488 204.758 409.668 213.574 398.789 213.574 c h +398.789 213.574 m f +0 g +q 0 1 -1 0 0 0 cm +213.574 -398.789 m 213.574 -387.91 204.758 -379.09 193.879 -379.09 c 183 + -379.09 174.18 -387.91 174.18 -398.789 c 174.18 -409.668 183 -418.488 193.879 + -418.488 c 204.758 -418.488 213.574 -409.668 213.574 -398.789 c h +213.574 -398.789 m S Q +BT +19.999999 0 0 -19.999999 385.746974 201.157618 Tm +/f-0-0 1 Tf +(C5)Tj +ET +0.227451 0.611765 0.847059 rg +462.77 263.648 m 451.891 263.648 443.07 254.828 443.07 243.949 c 443.07 + 233.07 451.891 224.254 462.77 224.254 c 473.648 224.254 482.469 233.07 +482.469 243.949 c 482.469 254.828 473.648 263.648 462.77 263.648 c h +462.77 263.648 m f +0 g +q 0 1 -1 0 0 0 cm +263.648 -462.77 m 263.648 -451.891 254.828 -443.07 243.949 -443.07 c 233.07 + -443.07 224.254 -451.891 224.254 -462.77 c 224.254 -473.648 233.07 -482.469 + 243.949 -482.469 c 254.828 -482.469 263.648 -473.648 263.648 -462.77 c +h +263.648 -462.77 m S Q +BT +19.999999 0 0 -19.999999 449.482692 251.230269 Tm +/f-0-0 1 Tf +(C6)Tj +ET +0.388235 0.764706 0.658824 rg +526.75 213.574 m 515.871 213.574 507.051 204.758 507.051 193.879 c 507.051 + 183 515.871 174.18 526.75 174.18 c 537.629 174.18 546.445 183 546.445 193.879 + c 546.445 204.758 537.629 213.574 526.75 213.574 c h +526.75 213.574 m f +0 g +q 0 1 -1 0 0 0 cm +213.574 -526.75 m 213.574 -515.871 204.758 -507.051 193.879 -507.051 c +183 -507.051 174.18 -515.871 174.18 -526.75 c 174.18 -537.629 183 -546.445 + 193.879 -546.445 c 204.758 -546.445 213.574 -537.629 213.574 -526.75 c +h +213.574 -526.75 m S Q +BT +19.999999 0 0 -19.999999 513.687269 201.157618 Tm +/f-0-0 1 Tf +(C7)Tj +ET +Q Q +showpage +%%Trailer +end +%%EOF diff --git a/imgs/divergence.png b/imgs/divergence.png new file mode 100644 index 0000000000000000000000000000000000000000..88fefcbf8fbf89964361a720e640768b5919fdee GIT binary patch literal 22795 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 literal 0 HcmV?d00001 diff --git a/presentation.tex b/presentation.tex index 0f1490b..41c3dfa 100644 --- a/presentation.tex +++ b/presentation.tex @@ -179,6 +179,89 @@ The key's randomart image is: \subsection{Principe} +\begin{frame}{Principe} + + \begin{block}{} + \enquote{Git permet de maintenir plusieurs versions différentes en parallèle} + \begin{flushright} + \textit{Nous, il y a deux semaines} + \end{flushright} + \end{block} + + \Pause + + Concrètement, tous les commits ne sont pas nécessairement sur la même \textbf{branche} de l'arbre. + + \begin{center} + \includegraphics[width=.7\linewidth]{./imgs/branches.eps} + \end{center} + + \textit{Le sens des flèches n'est pas chronologique ! Chaque commit pointe vers son père.} + +\end{frame} + +\begin{frame}{Création d'une divergence -- cas 1} + \begin{center} + \includegraphics[width=.4\linewidth]{./imgs/divergence.png} + \end{center} + + \begin{block}{Analyse} + \begin{itemize} + \item C2 et C3 ont tous les deux C1 comme père; + \item C2 et C3 introduisent des modifications différentes après C1; + \item ici, C2 et C3 sont sur \textbf{deux branches différentes de C1}; + \end{itemize} + \end{block} +\end{frame} + +\begin{frame}{Création d'une divergence -- cas 2} + \begin{center} + \includegraphics[width=.3\linewidth]{./imgs/divergence_2.png} + \end{center} + + \begin{block}{Analyse} + \begin{itemize} + \item C4 et C5 ont tous les deux C3 comme père; + \item C4 et C5 introduisent des modifications différentes après C3; + \item C4 est sur une branche \textbf{différente de C3}; + \item C5 est sur \textbf{la même branche que C3}. + \end{itemize} + \end{block} +\end{frame} + +\begin{frame}{Création d'une divergence} + \begin{block}{} + \centering + \enquote{Mais pourquoi est-ce qu'on fait ça ?} + \end{block} + + \Pause + + \begin{itemize} + \item pour isoler les travaux en cours + \item pour enregistrer des versions spécifiques + \end{itemize} + + \Pause + + \begin{block}{} + \centering + \enquote{Et c'est quoi la différence entre le cas 1 et le cas 2 ?} + \end{block} + + \Pause + + En théorie, pas grand chose à part la couleur : + \begin{itemize} + \item c'est une divergence dans les deux cas; + \item dans le cas 1, il est encore possible de faire un commit sur la branche jaune après C1. + \end{itemize} + En pratique avec git : + \begin{itemize} + \item ça dépend des modifications apportées et du sens que vous donnez à vos branches. + \end{itemize} + +\end{frame} \subsection{Application} -- GitLab