{"id":545,"date":"2010-12-09T11:45:34","date_gmt":"2010-12-09T10:45:34","guid":{"rendered":"http:\/\/www.alpesjug.fr\/?p=545"},"modified":"2010-12-09T14:35:20","modified_gmt":"2010-12-09T13:35:20","slug":"compte-rendu-de-la-soiree-git-et-astuces","status":"publish","type":"post","link":"https:\/\/www.alpesjug.fr\/?p=545","title":{"rendered":"Compte-rendu de la soir\u00e9e Git et Astuces"},"content":{"rendered":"<p><div id=\"attachment_546\" style=\"width: 310px\" class=\"wp-caption alignright\"><a href=\"http:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/david_gageot.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-546\" src=\"http:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/david_gageot-300x200.jpg\" alt=\"Avec Git plus le temps pour un caf\u00e9\" title=\"Avec Git plus le temps pour un caf\u00e9\" width=\"300\" height=\"200\" class=\"size-medium wp-image-546\" srcset=\"https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/david_gageot-300x200.jpg 300w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/david_gageot.jpg 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-546\" class=\"wp-caption-text\">Avec Git plus le temps pour un caf\u00e9<\/p><\/div>Malgr\u00e9 les intemp\u00e9ries qui ont tout essay\u00e9 pour nous priver de notre conf\u00e9rencier, c&rsquo;est avec \u00e0 peine un quart d&rsquo;heure de retard que David a pu commencer \u00e0 nous parler de Git.<br \/>\nLa pr\u00e9sentation \u00e9tait pleine d&rsquo;humour et de bon sens et les \u00e9changes avec la salle (et les courageux administrateurs syst\u00e8me ;o) )nombreux et vari\u00e9s. Gr\u00e2ce \u00e0 Git, Algodeal a pu faire l&rsquo;\u00e9conomie de sa fabuleuse machine \u00e0 caf\u00e9. En effet avec Git, comme toutes les op\u00e9rations se font localement on gagne beaucoup de temps. De plus le merge dans Git est plus intelligent : il sait suivre les renommages ou les d\u00e9placements de fichier (bien pratique en cas de refactoring massif).<br \/>\n<div id=\"attachment_549\" style=\"width: 310px\" class=\"wp-caption alignleft\"><a href=\"http:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/unbreakable_build.jpg\"><img loading=\"lazy\" decoding=\"async\" aria-describedby=\"caption-attachment-549\" src=\"http:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/unbreakable_build-300x199.jpg\" alt=\"Unbreakable build\" title=\"Unbreakable build\" width=\"300\" height=\"199\" class=\"size-medium wp-image-549\" srcset=\"https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/unbreakable_build-300x199.jpg 300w, https:\/\/www.alpesjug.fr\/wp-content\/uploads\/2010\/12\/unbreakable_build.jpg 1024w\" sizes=\"auto, (max-width: 300px) 100vw, 300px\" \/><\/a><p id=\"caption-attachment-549\" class=\"wp-caption-text\">Unbreakable build<\/p><\/div>Avec <strong>git-bisect<\/strong>, on a un algorithme classique (la dichotomie) pour chercher la racine d&rsquo;une regression :o).<br \/>\nMais Git c&rsquo;est aussi une gestion des branches simplissime, la r\u00e9\u00e9criture de l&rsquo;histoire et enfin des outils graphiques qui commencent \u00e0 arriver : le v\u00e9n\u00e9rable gitk (et gitX sous Mac) mais aussi <a href=\"http:\/\/cola.tuxfamily.org\/screenshots.html\">git-cola<\/a>, <a href=\"http:\/\/code.google.com\/p\/tortoisegit\/\">tortoise-git<\/a> etc.<br \/>\nAvec Git on peut d\u00e9finir son propre workflow de d\u00e9veloppement : par cercles de confiance (comme pour le noyau Linux) ou comme on utilisait Subversion. Voire on peut aller jusqu&rsquo;\u00e0 supprimer le serveur d&rsquo;int\u00e9gration continue et rendre le <strong>build unbreakable<\/strong> ;o)<\/p>\n<div style=\"width:425px\" id=\"__ss_5270389\"><strong style=\"display:block;margin:12px 0 4px\"><a href=\"http:\/\/www.slideshare.net\/dgageot\/git-tours-jug-2010\" title=\"Git Tours JUG 2010\">Git Tours JUG 2010<\/a><\/strong><object id=\"__sse5270389\" width=\"425\" height=\"355\"><param name=\"movie\" value=\"http:\/\/static.slidesharecdn.com\/swf\/ssplayer2.swf?doc=git-toursjug2010-100923131248-phpapp02&#038;stripped_title=git-tours-jug-2010&#038;userName=dgageot\" \/><param name=\"allowFullScreen\" value=\"true\"\/><param name=\"allowScriptAccess\" value=\"always\"\/><embed name=\"__sse5270389\" src=\"http:\/\/static.slidesharecdn.com\/swf\/ssplayer2.swf?doc=git-toursjug2010-100923131248-phpapp02&#038;stripped_title=git-tours-jug-2010&#038;userName=dgageot\" type=\"application\/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"425\" height=\"355\"><\/embed><\/object><\/p>\n<div style=\"padding:5px 0 12px\">View more <a href=\"http:\/\/www.slideshare.net\/\">presentations<\/a> from <a href=\"http:\/\/www.slideshare.net\/dgageot\">David Gageot<\/a>.<\/div>\n<\/div>\n<p>La seconde partie de la pr\u00e9sentation est rest\u00e9e dans le m\u00eame esprit d&rsquo;\u00eatre plus efficace et de garder le build rapide : David nous a pr\u00e9sent\u00e9 les diff\u00e9rentes strat\u00e9gies mises en place pour garder le build complet d&rsquo;Algodeal dans des dur\u00e9es inf\u00e9rieures \u00e0 5 minutes. Un bon rafraichissement sur les principes que j&rsquo;ai mis en \u0153uvre d\u00e8s le lendemain :o)<\/p>\n<div style=\"width:425px\" id=\"__ss_5505649\"><strong style=\"display:block;margin:12px 0 4px\"><a href=\"http:\/\/www.slideshare.net\/dgageot\/lets-make-this-test-suite-run-faster-softshake-2010\" title=\"Let&#39;s make this test suite run faster! SoftShake 2010\">Let&#39;s make this test suite run faster! SoftShake 2010<\/a><\/strong><object id=\"__sse5505649\" width=\"425\" height=\"355\"><param name=\"movie\" value=\"http:\/\/static.slidesharecdn.com\/swf\/ssplayer2.swf?doc=fastertests-soft-shake2010-101020120150-phpapp02&#038;stripped_title=lets-make-this-test-suite-run-faster-softshake-2010&#038;userName=dgageot\" \/><param name=\"allowFullScreen\" value=\"true\"\/><param name=\"allowScriptAccess\" value=\"always\"\/><embed name=\"__sse5505649\" src=\"http:\/\/static.slidesharecdn.com\/swf\/ssplayer2.swf?doc=fastertests-soft-shake2010-101020120150-phpapp02&#038;stripped_title=lets-make-this-test-suite-run-faster-softshake-2010&#038;userName=dgageot\" type=\"application\/x-shockwave-flash\" allowscriptaccess=\"always\" allowfullscreen=\"true\" width=\"425\" height=\"355\"><\/embed><\/object><\/p>\n<div style=\"padding:5px 0 12px\">View more <a href=\"http:\/\/www.slideshare.net\/\">presentations<\/a> from <a href=\"http:\/\/www.slideshare.net\/dgageot\">David Gageot<\/a>.<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Malgr\u00e9 les intemp\u00e9ries qui ont tout essay\u00e9 pour nous priver de notre conf\u00e9rencier, c&rsquo;est avec \u00e0 peine un quart d&rsquo;heure de retard que David a pu commencer \u00e0 nous parler de Git. La pr\u00e9sentation&#46;&#46;&#46;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[15,18],"tags":[34,32,366,11],"class_list":["post-545","post","type-post","status-publish","format-standard","hentry","category-compte-rendu","category-slides","tag-build","tag-git","tag-slides","tag-soiree"],"_links":{"self":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/545","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=545"}],"version-history":[{"count":9,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/545\/revisions"}],"predecessor-version":[{"id":555,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=\/wp\/v2\/posts\/545\/revisions\/555"}],"wp:attachment":[{"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=545"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=545"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.alpesjug.fr\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=545"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}