Qu'est-ce que Git Bash pour Windows de toute façon?

J'ai heureusement utilisé Git et Git Bash de https://git-scm.com /. Il y a une page avec plus d'informations ici: https://git-for-windows.github.io/.

Hier, j'ai rencontré un problème avec rsync, et j'ai commencé à creuser plus profondément dans Git Bash pour Windows. J'ai réalisé que je ne suis même pas sûr du nom du programme Bash, car il est juste livré avec le téléchargement git-scm. Je l'appelle Git Bash pour Windows, ce qui semble raisonnable.

En regardant "Qu'est-ce que Git Bash", j'ai lu à propos de Cygwin et d'une chose différente de appelée msys2 , qui semble être liée à msysGit, et j'ai vu des références à MinGW. Mais, ensuite, j'ai vu dans la FAQ que mintty est le terminal par défaut pour Git Bash.

Il semble que l'application Bash soit en fait un ensemble spécialement organisé d'autres choses (principalement énumérées ci-dessus) qui sont disponibles indépendamment.

Fondamentalement, je je voudrais savoir quelle est la base qui fait que les commandes *nix aiment ssh, scp, cat, et ls travailler dans Git Bash pour Windows?

(Je pense qu'une bonne réponse aiderait quelqu'un à comprendre, en gros traits, comment ces composants s'emboîtent et à comprendre les bons mots pour les composants, mais je ne veux pas casser le format question / réponse SO.)

demandé sur