Git jump un script para saltar a partes interesantes del proyecto

En este artículo veremos cómo utilizar el script git jump que nos permite abrir en Vim una serie de archivos de nuestro proyecto para acceder rápidamente a ellos

Este pequeño tutorial puede enmarcarse dentro de la categoría de tutoriales de git o de vim dentro del blog, así pues, espero que sea de ayuda a quienes busquen relativo a estas dos grandérrimas herramientas.

Según la documentación del propio proyecto, git jump es:

Un script para ayudarte a saltar a partes «interesantes» de tu proyecto en su editor. Funciona emitiendo un conjunto de interesantes puntos en el formato de «corrección rápida» (quickfix), que los editores como Vim pueden usar como cola de lugares para visitar (esta característica generalmente se usa para saltar a errores producido por un compilador).

Resumiendo y traduciendo, al utilizar git jump, nos abrirá el editor Vim (y creo que también hay soporte para ese otro editor… Emacs) usando quickfix y nos mostrará las partes que busquemos. O también podremos mostrar la salida por pantalla sin necesidad de abrir el editor Vim.

Sigue leyendo «Git jump un script para saltar a partes interesantes del proyecto»

Forgejo un reeplazo comunitario para Gitea

El proyecto Forgejo es un reemplazo creado por la comunidad a Gitea a la hora de poner en marcha un servicio git para hospedar código

Imagen de Pixabay

Gitea es un software escrito en Go con licencia MIT, de control de versiones de git, que se puede auto hospedar en un servidor propio. Resumiendo mucho, si instalamos Gitea en nuestro servidor, podríamos tener nuestro propio GitHub.

Es decir, un servidor donde alojar código y tener un control de versiones basado en git, con seguimiento de errores, wiki propia para los proyectos, etc.

Sigue leyendo «Forgejo un reeplazo comunitario para Gitea»

Cómo mostrar los commits en git realizados en una fecha concreta

Vamos a ver cómo podemos ver qué commits se realizaron en un repositorio git en una fecha concreta gracias al comando git log

Con el comando git log y sus opciones disponibles, podremos ver una lista de los commits realizados en un repositorio git, fecha, quien lo hizo y más información.

Hace un tiempo ya publiqué por el blog un artículo sobre git log:

En este caso vamos a aprender cómo poder filtrar esa muestra de los registros por una fecha específica o entre dos fechas.

Sigue leyendo «Cómo mostrar los commits en git realizados en una fecha concreta»

Migrar un repositorio git de GitHub a Codeberg

Vamos a ver cómo migrar un repositorio de git propio de GitHub a Codeberg una opción comunitaria y más respetuosa con el software libre

GitHub se ha convertido hace años en el sitio más conocido en el que desarrolladores y colaboradores hospedan su código en repositorios git que permiten la colaboración, el aporte, la mejora, etc.

Hace unos años Microsoft compró GitHub, la mayor empresa de software privativo conocida por sus oscuras artimañas (Adoptar, extender, extinguir) a la hora de imponder sus estrategias cerradas y de puro monopolio, era dueña de un gran sitio en el que se hospedaban multitud de proyectos de software libre.

Con semejante curriculum a sus espaldas, la compra de GitHub por Microsoft fue vista con recelo. Y aunque en GitHub se hospedaba gran cantidad de software libre, el propio sitio no es muy amigable con el propio software libre.

El fundador y antiguo CEO de GitHub no estaba muy a favor del software libre, el código de la propia página no es libre y además su uso hace que haya que ejecutar software privativo en el navegador. ¿Y qué podemos hacer?

Sigue leyendo «Migrar un repositorio git de GitHub a Codeberg»

Cómo renombrar una rama o borrar una rama en Git

Vamos a ver en detalle cómo podemos renombrar o borrar una rama local o remota en Git

Una de las utilidades más potentes de Git es poder crear diferentes ramas de un proyecto en el que trabajar de manera distribuida y muchas personas a la vez.

Cuando eres tu la única persona que trabaja en un repositorio de Git, el uso de ramas puede no tener mucho sentido, aunque siempre es una herramienta interesante para probar nuevas funcionalidades sin tocar aquello que funcionaba.

Pero cuando son muchas las personas que colaborar, crear ramas se convierte en algo esencial. Git está pensado para que varias personas puedan trabajar a la vez e incluso en el mismo archivo.

Cada persona puede desarrollar su trabajo en diferentes ramas de trabajo y después unir los cambios en una rama principal. Es interesante crear ramas específicas para diferentes trabajos o propósitos, como corregir un problema o añadir una nueva funcionalidad.

Testeado que todo funciona bien, esa rama específica se incorporará a la rama principal con todas las mejoras hechas.

Vamos a ver algunas tareas básicas con ramas en Git como renombrar ramas o borrarlas .

Sigue leyendo «Cómo renombrar una rama o borrar una rama en Git»

Con git hooks puedes automatizar tareas al trabajar con git

Deja que git hooks se ocupe de automatizar tareas, comprobar errores en commits, y mucho más de manera automática al trabajar con un repositorio en git

Los git hooks son una serie de scripts que se crean de manera automática al crear un repositorio git y que se «disparan» de manera automática ante ciertos eventos al trabajar con git. Por ejemplo al crear un commit, al recibir un push, etc.

Los podemos activar y personalizar a nuestras necesidades y utilizarlos para prevenir errores como enviar un commit a una rama equivocada, enviar una notificación antes de realizar un commit, etc.

Vamos a echar un vistazo a esos git hooks. Como siempre digo, no soy experto y por eso siempre remito a la documentación oficial. Aquí veremos algún ejemplo de uso de estos git hooks.

Sigue leyendo «Con git hooks puedes automatizar tareas al trabajar con git»

Solución al error: Unable to negotiate with port 22: no matching host key type found. Their offer: ssh-rsa

Hoy al actualizar un repositorio de git con git pull me saltó el error: Unable to negotiate with <IP> port 22: no matching host key type found. Their offer: ssh-rsa.

Desde hace años, mantengo la traducción al español de la web emailselfdefense, donde enseñan la manera de cifrar el correo electrónico para mantener la privacidad.

Resulta que se habían realizado algunas actualizaciones en el texto de la versión inglesa y quise dejarlos reflejarlos en la versión española.

Como el desarrollo de la página y de las versiones se realiza bajo git, me dispuse a descargar los cambios recientes subidos en la rama principal mediante git pull.

Al ejecutar el comando, me saltó un error:

Unable to negotiate with 209.51.188.160 port 22: no matching host key
type found. Their offer: ssh-rsa

Me decía que quizás no tenía permisos o que no existía el repositorio remoto. Bueno, pensé, ya he tocado algo que no debía y lo he roto todo. Así que pregunté en la lista de correo y con un enlace de aquí y otro de allá conseguí solucionarlo. ¿Quieres ver cómo?

Sigue leyendo «Solución al error: Unable to negotiate with port 22: no matching host key type found. Their offer: ssh-rsa»

git log para ver los cambios de un repositorio #git

git log nos muestra distinta información de los cambios realizados en un repositorio git

En ocasiones, en un repositorio git en el que trabajamos, queremos ver qué cambios se han realizado en los diferentes commits que forman el historial.

Con git log y las diferentes opciones que nos ofrece, podremos comprobar, qué commits se han realizado, quien los ha hecho, ver qué archivos se modificaron o un detalle de esos cambios.

Sigue leyendo «git log para ver los cambios de un repositorio #git»

git switch y git restore. Nuevos comandos para Git

Git desde la versión 2.23 incorpora dos nuevos comandos que son git switch y git restore como complemento a git checkout

Git checkout es uno de esos comandos de git que dependiendo del contexto en el que se utilice realiza una u otra cosa. Un todo terreno, que en muchos casos quizás pueda confundir a neófitos o usuarios (como yo) con pocos conocimientos sobre git.

Con el comando checkout podemos cambiar de rama de desarrollo, podemos crear una rama, podemos mover archivos entre ramas, etc. Hace poco escribí un artículo al respecto:

Entonces ¿qué hacen los nuevos comandos git switch y git restore?

Sigue leyendo «git switch y git restore. Nuevos comandos para Git»

privacytools-es se renueva y actualiza

privacytools-es ofrece herramientas para cifrar y protegerte del seguimiento masivo en internet

Allá por el 2016, anuncié por el blog que ponía en marcha la web privacytools-es que ofrece una colección de herramientas y consejos a la hora de mantener nuestra privacidad en internet:

La web es una traducción/adaptación de la web en inglés privacytools.io y me pareció un gran recurso, así que manos a la obra me puse a traducir tooooda la web.

El tiempo pasó, el proyecto de la web en inglés creció, se añadieron muchas personas para mejorar, aportar y renovar la web. ¿y qué pasaba con mi versión en español?

Sigue leyendo «privacytools-es se renueva y actualiza»