Category: Git

  • Transparencias de “Git para el día a día” de la Meetup PHP Vigo

    En este enlace (5,15 MB) dejo las transparencias de la presentación “Git para el día a día” de la Meetup PHP Vigo del día 14 de marzo de 2016.

    El contenido, pensado para usuarios familiarizados con Git, es el siguiente:

    • Breve introducción a Git.
    • Ramas, fusión y conflictos.
    • Repositorios remotos.
    • Flujos de trabajo.
    • Git flow.
  • Git para el día a día. Mi charla en la Meetup de PHP Vigo

    El lunes 14 de marzo de 2016, a las 19:30, en la Meetup de PHP Vigo, que tendrá lugar en la Casa del Libro de Vigo, daré una charla en el que repasaré los elementos más habituales de Git.

    Para asistir solo hay que apuntarse en la página de la Meetup.

  • How to stop tracking a file in Git using the .gitignore file

    The .gitignore file is used in Git to ignore some unwanted files (e.g. .o, .obj, .exe files). The .gitignore file specifies intentionally untracked files to ignore.

    (more…)

  • Taller de Git Avanzado. Archivos

    En la sección de documentación os dejo los archivos usados en el taller de Git avanzado que doy el 29/03/2014 en Galpón en Vigo: la presentación, el guion de clase, los resultados de los ejemplos y del ejercicio y dos archivos de Bash para configurar alias para Git. Espero que os sean útiles.

  • 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.