Git y los permisos de los archivos, aka chmod

Al ir a continuar el trabajo en un tema de WordPress hice un

git status

para ver como tenía sincronizado el trabajo con el repositorio local y vi que tenía modificados unos cuantos archivos que no recordaba haberlos tocado últimamente. Por ejemplo, el archivo de la licencia, gpl-2.0.txt

Al hacer un

git diff gpl-2.0.txt

para ver los cambios realizados desde el último commit en el archivo gpl-2.0.txt, el resultado era el siguiente

diff ––git a/gpl-2.0.txt b/gpl-2.0.txt
old mode 100644
new mode 100755

Si os fijáis, lo que hay es un cambio en los permisos del archivo, cambiados al ejecutar un

sudo chmod 775 * -R

Para evitar estos problemas y que git ignore los cambios en los permisos de los archivos, simplemente hay que ejecutar:

git config ––global core.filemode false

Si este comando no te funciona, prueba a añadir el parámetro ––add:

git config ––add ––global core.filemode false

Recuerda que el parámetro ––global funciona a nivel de usuario, por lo que este parámetro afectará a todos tus repositorios locales. Si ejecutamos

cat ~/.gitconfig

podemos ver que aparece la configuración en ese archivo

[core]
filemode = false

En la documentación de Git podéis ver la descripción de este parámetro de configuración

core.fileMode
If false, the executable bit differences between the index and the working tree are ignored; useful on broken filesystems like FAT. See git-update-index(1).
The default is true, except git-clone(1) or git-init(1) will probe and set core.fileMode false if appropriate when the repository is created.

 

Published
Categorized as Git Tagged

Construyendo una impresora 3D en la clase de tecnología

Conocí a Tucho, profesor de tecnología del CPI Alcalde Xosé Pichel de Coristanco (A Coruña), al final de una jornada de Arduino Connect organizada por Galpon. Vendía unas rifas para financiar la construcción de una impresora 3D que estaban montando en la clase de tecnología de 4º de ESO en el Instituto donde da clase.

Había visto la complejidad técnica de estas impresoras 3D artesanales un mes antes en el Kernel 2013, por lo que me pareció impresionante el trabajo de Tucho, buscando financiación para que sus alumnos de 4º de ESO (16 años) puedan tener un primer contacto con la electrónica a bajo nivel (Arduino), su programación, el montaje mecánico, el de los motores, el software de impresión,… Espero que estos alumnos sepan valorar el trabajo de su profesor y la gran suerte que tienen por poder tener una primera aproximación con todos estos elementos en 4º de ESO.

Podéis seguir esta iniciativa en su blog o en su Twitter.

Si fuera director de un centro de educación trataría de fichar a Tucho sí o sí.

Os dejo una fotografía sacada de su blog.

APatacaPrusadora

Cómo funciona Bitcoin

Si empezáis a oír hablar sobre Bitcoin, monedas virtuales, criptomonedas y conceptos similares pero no estáis suficientemente informados, os recomiendo el siguiente vídeo (en inglés), donde se explica cómo funciona técnicamente Bitcoin y, por extrapolación, el resto de criptovirtuales de una forma similar.

Tendencias en los lenguajes de programación

A partir de una entrada en el blog de Adam Bard acabo de elaborar una gráfica (la hoja de cálculo está disponible aquí) en la que se pueden ver los lenguajes más usados en GitHub y su evolución con respecto al año anterior, atendiendo al número de repositorios creados en el periodo enero-agosto de cada año.

Tendencias_lenguajes_2013

 

Lo más significativo:

  • El número de repositorios creado desciende este año. Algo normal en un sistema que ha crecido fuertemente y que tiene a medio plazo a la estabilización. Atendiendo a los repositorios creados en los 20 principales lenguajes:
    • 2013: 1.178.534
    • 2012: 1.875.869
  • JavaScript pasa a ser el lenguaje más usado, adelantando a Ruby, que está en la segunda posición.
  • Hay descensos importantes como:
    • Ruby: 37%
    • Java: 41%

    • PHP: 34%
    • Python: 45%

    • C: 68%

Free fonts

Os dejo una recopilación que iré aumentando de fuentes gratuitas y/o libres de calidad que encuentro en diferentes repositorios. Hay algunas de gran calidad, como las liberadas por Adobe. Están basadas en mis gustos, por lo que no os esperéis ningún tipo de objetividad 😉

Están ordenadas alfabéticamente.

Born to hack!

born_to_hack

Estoy un poco cansado del mal uso que se hace de la palabra hacker, siempre ligado al mundo de la informática y al lado oscuro: el cracking.

Esta semana recibía desde Suecia un paquete con un regalo muy especial por parte de la gente de Pingdom: unas chapas con su emblema: “Born to hack!”. Se las enseñaba a una persona y lo primero que me preguntó es que qué quería decir, a qué se refería. Como muchas veces es complicado describir qué es hacking y a la vez mejorar lo escrito, mi respuesta está escrita por Stallman en un fantástico artículo titulado On hacking!

It is hard to write a simple definition of something as varied as hacking, but I think what these activities have in common is playfulness, cleverness, and exploration. Thus, hacking means exploring the limits of what is possible, in a spirit of playful cleverness. Activities that display playful cleverness have “hack value”.

Y respecto a la confusión y mal uso entre el término hacker y cracker:

Yet when I say I am a hacker, people often think I am making a naughty admission, presenting myself specifically as a security breaker. How did this confusion develop?

Around 1980, when the news media took notice of hackers, they fixated on one narrow aspect of real hacking: the security breaking which some hackers occasionally did. They ignored all the rest of hacking, and took the term to mean breaking security, no more and no less. The media have since spread that definition, disregarding our attempts to correct them. As a result, most people have a mistaken idea of what we hackers actually do and what we think.

You can help correct the misunderstanding simply by making a distinction between security breaking and hacking—by using the term “cracking” for security breaking. The people who do it are “crackers”. Some of them may also be hackers, just as some of them may be chess players or golfers; most of them are not.

Y como muestra de lo que es un hacker está el autor de la impresora 3D artesanal.

Free programming books

Os dejo unos enlaces con una buena recopilación de libros gratuitos sobre programación:

Impresoras 3D artesanales

Este sábado estuve en el Kernel 2013, y uno de los elementos que más me sorprendió fue una impresora 3D artesanal. Os dejo un vídeo de cómo funciona y unas fotografías tanto de la impresora como de lo que es capaz de imprimir.

IMG_7680

IMG_7698

IMG_7687

IMG_7686