python manage.py runserver, shell, dbshell se congela en git-bash

Estoy tratando de ejecutar el shell interactivo en python virtualenv en windows, en git-bash, pero no se está ejecutando. Lo extraño es que no parece hacer nada, solo el cursor parpadea en la siguiente línea, sin dar salida.

$ python manage.py shell | 

Sin embargo, puedo ejecutar comandos como: migrate, makemigrations, sqlmigrate. El problema está ocurriendo con los comandos – shell, dbshell, runserver.

Esto parece ser un problema relacionado con git-bash, porque puedo ejecutar shell desde la línea de comandos. Estoy usando PortableGit-2.4.3.1-2nd-release-candidate-64-bit.7z.exe en Windows.

Resumiendo la investigación en los comentarios …

Una buena manera de investigar este tipo de problemas es usar pystuck .

En este caso, parece haber sido una especie de dependencia interna de IPython, ya que la instalación de pystuck también instala IPython y el error ya no se reproduce con ambos instalados.

El problema es que python.exe tiene problemas con gitbash. Supuestamente, tiene algo que ver con la biblioteca ncurses.

La solución es escribir “winpty python.exe” en lugar de python. “Winpty python.exe manage.py shell” debería funcionar. También puede crear un alias para evitar el problema. Escribir “alias python = ‘winpty python.exe'” hará que “python manage.py shell” funcione como debería.

Esta respuesta lo explica mejor: Python no funciona en la línea de comandos de git bash

No tengo idea para el shell comandos y dbshell , pero para el comando runserver , tuve el mismo problema. Resolví corriendo

 python manage.py runserver --noreload 

Vaya a http://127.0.0.1:8000/ y actualice el navegador. Su terminal debe mostrar la información de su sitio web.