{"id":2143,"date":"2020-01-07T14:08:44","date_gmt":"2020-01-07T20:08:44","guid":{"rendered":"http:\/\/blografia.net\/vicm3\/?p=2143"},"modified":"2020-01-07T14:29:20","modified_gmt":"2020-01-07T20:29:20","slug":"git-y-moodle","status":"publish","type":"post","link":"https:\/\/blografia.net\/vicm3\/2020\/01\/git-y-moodle\/","title":{"rendered":"Git y Moodle"},"content":{"rendered":"<p>Ah\u00ed por septiembre que anduve en un seminario en el IIEc y tuve la fortuna de compartir varias comidas con Gunnar, abri\u00f3 una de las gratas platicas de sobremesa con -\u00bfcual es tu flujo de trabajo habitual con git? A lo que conteste en ese entonces, \u00abno tengo, sigo usando subversion\u00bb y del cual hubo una interesante discusi\u00f3n de la que vale la pena escribir en otro momento<\/p>\n<p>M\u00e1s pronto de lo que hubiera deseado me encontr\u00e9 con la necesidad de implementar git ya que tengo m\u00e1s de una veintena de instancias de Moodle en al menos 4 maquinas con distribuciones diferentes y por ende versiones de software diferentes, pero m\u00e1s o menos un set de temas, plugins y modificaciones m\u00e1s o menos homog\u00e9neo, yo creo que a la semana de esta pregunta de sobremesa tuve que hacer un crash learning de lo que recordaba de git, status, commit, pull y aprender cual es el flujo diario de trabajo, el cual recomiendo para alguien que necesite un repaso de 10 minutos [1] e investigar como construir mi propio repositorio privado para mi versi\u00f3n especifica con sus modificaciones.<\/p>\n<p>Lejos esta este de ser ese por un manual de como hacerlo, me puse a pensar tengo un mont\u00f3n de instancias, cual ser\u00e1 la mejor forma de manejarlas, hasta el momento lo que hacia simplemente era clonar el LTS de Moodle via https en github, es decir pr\u00e1cticamente lo que dice que haga uno en la p\u00e1gina de la documentaci\u00f3n de Moodle [2] es m\u00e1s hasta hab\u00eda recortado lo que clonaba a solo el release que me interesaba en su momento 3.1 que era el anterior LTS, ahora que el LTS es 3.5 primero prob\u00e9 con las versiones de php y tuve varios problemas, por lo que en 3.5.8 hab\u00eda un par de problemas que no me permit\u00edan actualizar con php 7.0.33 en todo caso esto hizo m\u00e1s apremiante crear mi propio repositorio [3,4] a donde puse todos mis cambios y ejercite mis reci\u00e9n recordados usos de git\u2026<\/p>\n<p>Esto resolvi\u00f3 y creo un problema interesante, resolvi\u00f3 que en mis servidores tengo bloqueado un mont\u00f3n de sitios por pol\u00edticas del firewall entre ellos github, go figure, por lo que hacia un peque\u00f1o t\u00fanel para que localhost se convirtiera en github, eso lo soluciono tener mi propio repositorio interno y en una de mis maquinas, ademas de a\u00f1adir velocidad a mover archivos, pero me creo el problema de tener que entrar mi contrase\u00f1a por todos lados, por supuesto crear una llave ssh sin contrase\u00f1a lo solucionar\u00eda por lo cual tuve que mover mi repositorio privado de mi maquina de oficina a una maquina con mejor uptime y en el site de la universidad, cosa sencilla pues es la misma maquina que actualmente se encarga de los respaldos.<\/p>\n<p>Aqu\u00ed como se ve mi git log<\/p>\n<p>commit 5d20900043d1f96e74f9c001c55f866b9a0a5004 (HEAD -&gt; master, origin\/master, origin\/HEAD)<br \/>\nAuthor: vicm3 &lt;vicm3@blografia.net&gt;<br \/>\nDate: Tue Jan 7 12:47:46 2020 -0600<\/p>\n<p>A\u00f1ado morecandy en compatibilidad con los sitios que a\u00fan lo requieren.<\/p>\n<p>commit 8efdcfae566a4a4d7992e46baf8ec1b70426fc47<br \/>\nAuthor: vicm3 &lt;vicm3@blografia.net&gt;<br \/>\nDate: Sun Dec 29 15:14:22 2019 -0600<\/p>\n<p>Paso de 3.5.8 a 3.5.9, janus y sagan est\u00e1n atrasados ya que no siguen este repositorio.<\/p>\n<p>commit a8cc685c61ed8e32048ed5e378371e0b320061c3<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Fri Dec 27 13:27:35 2019 -0600<\/p>\n<p>Y bueno parece que ahora requiere () en vez de {} :P a ver si se ponen<br \/>\nde acuerdo o ponen un ejemplo, de hecho voy a tener que ponerlo.<\/p>\n<p>commit 13b5c644f5dc7b18066816d6fea1d0f9e59bb74e<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Fri Dec 27 11:18:54 2019 -0600<\/p>\n<p>A probar si el error es por el [] en lugar de {} o tengo que buscar en<br \/>\nla documentaci\u00f3n.<\/p>\n<p>commit 426b566679bfd68c475a9d930855ca67f2d2d569<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Thu Dec 26 20:51:10 2019 -0600<\/p>\n<p>Los cambios para el manejo del corro, que a\u00fan hay que probar y la<br \/>\nlibreria phpmailer para que acepte linux como relay.<\/p>\n<p>commit a5ba8d7b3a264016b8eb868db6efd18820d089ed<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Thu Dec 26 18:44:18 2019 -0600<\/p>\n<p>Actualizo los configurable_reports y format_onetopic.<\/p>\n<p>commit 7f6125d8e2f6919fa18da5c9972ca659c8a109de<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Thu Dec 26 17:58:29 2019 -0600<\/p>\n<p>Pensando en como manejar todo el relajo que traigo para tener un solo<br \/>\nrepo pero de las modificaciones que si hacemos.<\/p>\n<p>commit 8149c639edae09cbd8aa910623f84da1324aae00<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Thu Oct 24 13:54:18 2019 -0500<\/p>\n<p>Probando a\u00f1adir cambios desde janus.<\/p>\n<p>commit 0f89bd30f24711aa5ec11cc48c503db3af3c689a<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Wed Oct 2 23:57:32 2019 -0500<\/p>\n<p>Canvas es dependencia de formal_white y como no puedo hacer push lo<br \/>\nhabia dejado con el nombre incorrecto y mal puesto&#8230; Buhh<\/p>\n<p>commit 36e4f980e13d34e8b69d5b13a610a73de50ed81f<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Wed Oct 2 23:52:23 2019 -0500<\/p>\n<p>A\u00f1ado theme_base como dependencia de forma_white<\/p>\n<p>commit b1a10a5abe60535e2c86ab56f089faea23c0f551<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Wed Oct 2 23:22:05 2019 -0500<\/p>\n<p>Formal_white lo requiere como theme_canvas, probemos.<\/p>\n<p>commit 6b3a36ded35b93d323cfe4485376fd2cb9e58d83<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Wed Oct 2 23:18:46 2019 -0500<\/p>\n<p>A\u00f1ado canvas y formal_white para nuestro stack tener en cuenta que son<br \/>\nviejisimos y pueden causar problemas con muchos dispositivos.<\/p>\n<p>commit d72aec2b88d630ab90301ebb9351ef024b747f94<br \/>\nAuthor: V\u00edctor Mart\u00ednez &lt;victor.m3@gmail.com&gt;<br \/>\nDate: Wed Oct 2 23:05:38 2019 -0500<\/p>\n<p>Para usar formal_white hay que poner todas sus dependencias, canvas y<br \/>\notros dos que ya no est\u00e1n soportados hace tiempo, vale la pena?<\/p>\n<p>commit 267198eecfaa0a054ebfeadcd58142653d1ad20e<br \/>\nAuthor: root &lt;root@formaciontutores.ajusco.upn.mx&gt;<br \/>\nDate: Wed Oct 2 22:29:55 2019 -0500<\/p>\n<p>a\u00f1ado themes, configurable_reports y course_format_onetopic<\/p>\n<p>commit 38a3831b1a3e63462309c79bfa9171f0ab82e18a<br \/>\nAuthor: root &lt;root@formaciontutores.ajusco.upn.mx&gt;<br \/>\nDate: Wed Oct 2 22:25:37 2019 -0500<\/p>\n<p>Primer commit<\/p>\n<p>Y claro simplemente hacer git pull en cada maquina me ha simplificado la vida, me simplificarla a\u00fan m\u00e1s la vida a\u00f1adir a los hooks que cuando hago push lanzara los scripts que tengo para hacer pull y los de actualizaci\u00f3n, pero como no hago pruebas estandarizadas y pudiera tronar como un gigantesco ejote de momento hasta aqu\u00ed me parece una mejor practica que estar siguiendo el HEAD de Moodle sin mayores cambios, lo cual rompi\u00f3 un par de instalaciones en el pasado por que tengo maquinas con CentOS, Debian y Ubuntu.<\/p>\n<p>Bien dice el dicho, todos tenemos ambientes de desarrollo y de producci\u00f3n hay quien tiene la suerte de tenerlos separados ;) en mi caso esa separaci\u00f3n se encuentra en que no se propaga autom\u00e1ticamente y que puedo ir probar maquina por maquina y luego correr la automatizaci\u00f3n, se que no es lo ideal, pero me funciona bastante bien.<\/p>\n<p>Y claro, todav\u00eda no tengo un flujo &#8216;sano\/diario&#8217; de trabajo en git.<\/p>\n<p>[1] <a href=\"https:\/\/rogerdudler.github.io\/git-guide\/\">https:\/\/rogerdudler.github.io\/git-guide\/<\/a><br \/>\n[2] <a href=\"https:\/\/docs.moodle.org\/38\/en\/Git_for_Administrators\">https:\/\/docs.moodle.org\/38\/en\/Git_for_Administrators<\/a><br \/>\n[3] <a href=\"https:\/\/stackoverflow.com\/questions\/7632454\/how-do-you-use-git-bare-init-repository\">https:\/\/stackoverflow.com\/questions\/7632454\/how-do-you-use-git-bare-init-repository<\/a><br \/>\n[4] <a href=\"https:\/\/mijingo.com\/blog\/what-is-a-bare-git-repository\">https:\/\/mijingo.com\/blog\/what-is-a-bare-git-repository<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ah\u00ed por septiembre que anduve en un seminario en el IIEc y tuve la fortuna de compartir varias comidas con Gunnar, abri\u00f3 una de las gratas platicas de sobremesa con -\u00bfcual es tu flujo de trabajo habitual con git? A &hellip; <a href=\"https:\/\/blografia.net\/vicm3\/2020\/01\/git-y-moodle\/\">Sigue leyendo <span class=\"meta-nav\">&rarr;<\/span><\/a><\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[5,3,10,8,6],"tags":[],"class_list":["post-2143","post","type-post","status-publish","format-standard","hentry","category-debraye","category-general","category-planetalinux","category-sysadmin","category-trabajo"],"jetpack_publicize_connections":[],"jetpack_featured_media_url":"","jetpack_sharing_enabled":true,"jetpack-related-posts":[{"id":2738,"url":"https:\/\/blografia.net\/vicm3\/2025\/12\/moodle-4-5-lts\/","url_meta":{"origin":2143,"position":0},"title":"Moodle 4.5 LTS","author":"vicm3","date":"5 diciembre, 2025","format":false,"excerpt":"Este a\u00f1o me propuse en verano hacer el cambio de versi\u00f3n Moodle para pasarme a la versi\u00f3n de soporte a largo plazo (Long Term Support LTS) y medio lo prepar\u00e9, fui al DC25, estuve haciendo otras cosas, sali\u00f3 Debian 13 (Trixie) y lo que pens\u00e9 que era un mont\u00f3n de\u2026","rel":"","context":"En \u00abDebian\u00bb","block_context":{"text":"Debian","link":"https:\/\/blografia.net\/vicm3\/category\/debian\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1670,"url":"https:\/\/blografia.net\/vicm3\/2016\/08\/php-y-certificados-firmados-por-uno-mismo-el-caso-de-moodle\/","url_meta":{"origin":2143,"position":1},"title":"PHP y certificados firmados por uno mismo el caso de Moodle","author":"vicm3","date":"29 agosto, 2016","format":false,"excerpt":"Ya lo puse en gran medida en ingles en enero de este a\u00f1o que actualizamos la mayor\u00eda de nuestros servidores a php > 5.6 y empezamos a tener problemas al mandar correo desde el mismo via SSL\/TLS entonces lo documento ac\u00e1 de nuevo pero en espa\u00f1ol, porque no se me\u2026","rel":"","context":"En \u00abEducaci\u00f3n\u00bb","block_context":{"text":"Educaci\u00f3n","link":"https:\/\/blografia.net\/vicm3\/category\/educacion\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1533,"url":"https:\/\/blografia.net\/vicm3\/2016\/01\/actualizando-moodle\/","url_meta":{"origin":2143,"position":2},"title":"Actualizando Moodle","author":"vicm3","date":"12 enero, 2016","format":false,"excerpt":"Moodle de 2.7.11 a 2.7.12 \/usr\/share\/moodle# git pull remote: Counting objects: 69, done. remote: Compressing objects: 100% (31\/31), done. remote: Total 69 (delta 51), reused 54 (delta 38), pack-reused 0 Unpacking objects: 100% (69\/69), done. From https:\/\/github.com\/moodle\/moodle d27a325..3f85661 MOODLE_27_STABLE -> origin\/MOODLE_27_STABLE * [new tag] v2.7.12 -> v2.7.12 Updating d27a325..3f85661 Fast-forward\u2026","rel":"","context":"En \u00abDebraye\u00bb","block_context":{"text":"Debraye","link":"https:\/\/blografia.net\/vicm3\/category\/debraye\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1691,"url":"https:\/\/blografia.net\/vicm3\/2016\/11\/automagic-moodle-update\/","url_meta":{"origin":2143,"position":3},"title":"Automagic Moodle update","author":"vicm3","date":"14 noviembre, 2016","format":false,"excerpt":"Well its monday so semi auto magic roll of patches on CentOS via yum-cron on Debian broken for some dumb and strong firewall rules but applied via unattended updates now done through a ssh tunnel using tsocks, been thinking on create a permanent tunnel or one based on apt.conf and\u2026","rel":"","context":"En \u00abDebraye\u00bb","block_context":{"text":"Debraye","link":"https:\/\/blografia.net\/vicm3\/category\/debraye\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":1537,"url":"https:\/\/blografia.net\/vicm3\/2016\/01\/bits-of-code-php-and-self-signed-cert-on-moodle\/","url_meta":{"origin":2143,"position":4},"title":"Bits of code, php and self signed cert on Moodle","author":"vicm3","date":"22 enero, 2016","format":false,"excerpt":"And a hack, if you happen to have a Moodle 2.6.x with phpmailer old library and you had php5.6.x you may find if you use ssl\/tls to send mail that now php is strictier with self signed certificates, well there are good documentation on php.net about [1] and [2] but\u2026","rel":"","context":"En \u00abEducaci\u00f3n\u00bb","block_context":{"text":"Educaci\u00f3n","link":"https:\/\/blografia.net\/vicm3\/category\/educacion\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]},{"id":337,"url":"https:\/\/blografia.net\/vicm3\/2006\/08\/consol2006\/","url_meta":{"origin":2143,"position":5},"title":"Consol2006","author":"vicm3","date":"20 agosto, 2006","format":false,"excerpt":"Termino, este a\u00f1o estuve mucho menos vinculado con el mismo, aunque he de decir que no me fue del todo mal, si me puedo quejar que solo 1 dia pude asistir al mismo. El dia que me toco exponer sobre claroline donde tuve el gusto de encontrarme con que el\u2026","rel":"","context":"En \u00abSin categor\u00eda\u00bb","block_context":{"text":"Sin categor\u00eda","link":"https:\/\/blografia.net\/vicm3\/category\/sin-categoria\/"},"img":{"alt_text":"","src":"","width":0,"height":0},"classes":[]}],"_links":{"self":[{"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/posts\/2143","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/comments?post=2143"}],"version-history":[{"count":0,"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/posts\/2143\/revisions"}],"wp:attachment":[{"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/media?parent=2143"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/categories?post=2143"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blografia.net\/vicm3\/wp-json\/wp\/v2\/tags?post=2143"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}