Learn

Git Bash en Windows

Terminal

Por qué instalar Git Bash en lugar de quedarse con PowerShell, y las trampas de Windows que debes conocer.

Requisitos previos

En macOS y Linux, abrir un terminal te da bash o zsh: la misma sintaxis que el 99% de los tutoriales que vas a cruzar. En Windows es diferente: por defecto tienes PowerShell, cuya sintaxis y comandos no son compatibles. La solución más cómoda es instalar Git Bash, que te da una shell bash estándar en Windows.

Por qué Git Bash y no PowerShell

PowerShell es muy potente, pero tiene sus propias convenciones: variables con $, operadores -eq en lugar de ==, sin encadenamiento && (en PowerShell 5.1), sintaxis diferente para los pipes. Si sigues un tutorial escrito para macOS o Linux, no funcionará tal cual en PowerShell.

Git Bash resuelve ese problema: es un mini entorno Unix sobre Windows, incluido gratuitamente con Git for Windows. Trae bash, más la mayoría de herramientas Unix básicas (grep, sed, awk, curl, etc.).

Instalar Git Bash

shell
1. Descargar el .exe en git-scm.com/download/win2. Lanzar el instalador, seguir los valores por defecto3. Al final, "Git Bash" aparece en el menú Inicio

Abre Git Bash. El prompt se parece a bloki@DESKTOP MINGW64 ~: estás en una shell bash, como en Linux.

Verificar que es bash

shell
echo $SHELL

Si ves /usr/bin/bash (o similar), estás en bash. Perfecto.

Tres trampas de Windows que debes conocer

1. Las rutas absolutas

Puedes escribir una ruta absoluta de dos formas en Git Bash:

shell
cd /c/Users/bloki/Desktop
cd "C:\Users\bloki\Desktop"

Las dos funcionan. La forma /c/... (slash forward) suele ser más práctica: no necesitas escapar los \, y se copia y pega sin sorpresas en scripts.

2. cd no persiste entre invocaciones de herramientas

Si una herramienta (como un editor, un script externo, o Claude Code) lanza bash varias veces, el cd que haces en un comando no lo ve el siguiente. Cada invocación vuelve a la carpeta de origen.

Solución: encadena en el mismo comando con una subshell o &&.

shell
(cd tools/stats && uv run python -m cli.inject)

3. Heredoc Python con apóstrofos

Puede que necesites pasar código Python a un intérprete vía heredoc:

shell

Funciona mientras tu Python no contenga apóstrofos sueltos en strings. Si los tiene, Git Bash en Windows falla con unexpected EOF. En ese caso, escribe tu script en un archivo .py y ejecútalo normalmente, sin hacer pipe vía heredoc.

Marca los pasos para desbloquear lo siguiente

Volver al curso