101 votes

Quelle est la signification exacte de Git Bash ?

Git Bash

J'ai travaillé avec Git Bash au cours des deux derniers jours. Je connais maintenant les opérations de base telles que commit , push , pull , fetch et merge . Mais je ne sais toujours pas ce que Git Bash lui-même l'est en réalité !

J'ai fait beaucoup de recherches sur Git Bash, mais tous les sites que j'ai vus se concentrent sur la fonctionnalité de ses commandes. Je n'ai toujours pas trouvé de bonne réponse à ma question. Maintenant, je pense que je suis au bon endroit pour obtenir cette réponse !

79voto

VonC Points 414372

Git bash est un shell où :

Voir " Fixer msysGit Portable $HOME emplacement " :

Sur un ordinateur Windows 64 :

C:\Windows\SysWOW64\cmd.exe /c ""C:\Prog\Git\1.7.1\bin\sh.exe" --login -i"

Cela diffère de git-cmd.bat qui fournit des commandes git dans une simple invite de commande DOS.

Un outil comme GitHub pour Windows (G4W) fournit un shell différent pour git (y compris une version PowerShell)


Mise à jour avril 2015 :

Note : le git bash dans msysgit/Git pour Windows 1.9.5 est une vieille histoire :

GNU bash, version 3.1.20(4)-release (i686-pc-msys)
Copyright (C) 2005 Free Software Foundation, Inc.

Mais avec le abandon progressif de msysgit (Q4 2015) et le nouveau Git pour Windows (Q2 2015), vous avez maintenant Git pour Windows 2.3.5 .
Il dispose d'un bash beaucoup plus récent, basé sur les 64bits. projet msys2 MSYS, une réécriture indépendante de MSYS, basée sur Cygwin moderne (couche de compatibilité POSIX) et MinGW-w64 dans le but d'une meilleure interopérabilité avec les logiciels natifs de Windows. msys2 est livré avec son propre installateur aussi.

Le git bash est maintenant (avec le nouveau Git pour Windows) :

GNU bash, version 4.3.33(3)-release (x86_64-pc-msys)
Copyright (C) 2013 Free Software Foundation, Inc.

Réponse originale (juin 2013) Plus précisément, de wiki msygit :

Historiquement, Git sous Windows n'était officiellement supporté que par Cygwin.
Pour aider à la réalisation d'une version native pour Windows, ce projet a été lancé, sur la base de l'initiative fourche mingw .

Pour rendre plus claire la "soupe" laiteuse des noms de projets, nous disons comme ceci :

  • msysGit - est le nom de ce projet, un environnement de construction pour Git pour Windows, qui publie les binaires officiels.
  • MinGW - est un environnement de développement minimaliste pour les applications natives de Microsoft Windows.
    Il s'agit en fait d'une très fine couche de compilation au-dessus du Runtime de Microsoft ; les programmes MinGW sont donc de véritables programmes Windows, sans aucune notion de chemins de style Unix ou de subtilités POSIX telles que l'avertissement de l'utilisateur. fork() appelez
  • MSYS - est un système d'interprétation de ligne de commande Bourne Shell, est utilisé par MinGW (et d'autres), a été forké dans le passé de Cygwin
  • Cygwin - un environnement similaire à Linux, qui a été utilisé dans le passé pour construire Git pour Windows, aujourd'hui n'a aucune relation avec msysGit

Donc, votre description de deux lignes à propos de "git bash" sont :

" Git bash "est un shell msys inclus dans "Git for Windows", et est une version réduite de Cygwin (une vieille version en plus), dont le seul but est de fournir une couche POSIX suffisante pour exécuter un bash.


Rappel :

msysGit est l'environnement de développement pour compiler Git pour Windows. Il est complet, dans le sens où il vous suffit d'installer msysGit, et ensuite vous pouvez compiler Git. Sans installer aucun logiciel tiers.

msysGit n'est pas Git pour Windows ; c'est un installateur qui installe Git -- et seulement Git. .

Voir plus dans " Différence entre msysgit et Cygwin + git ? ".

22voto

O.M.Y. Points 297

Je pense que l'auteur de la question pense (pensait) que git bash est une commande comme git init o git checkout . Git bash n'est pas un commande il s'agit d'un interface . Je supposerai également que le demandeur n'est pas un utilisateur de Linux, car bash est très populaire dans le monde Unix/Linux. Le nom "bash" est un acronyme pour " B ourne A gain SH ell". Bash est une interface de commande en mode texte qui possède des fonctionnalités permettant d'exécuter des scripts automatisés. A bon L'analogie serait de comparer bash à la nouvelle PowerShell dans Windows7/8. A pauvre (mais susceptible d'être mieux comprise par un plus grand nombre de personnes) est la combinaison de la invite de commande et les fichiers de commande .BAT (batch) de l'époque du DOS et des premières versions de Windows.

RÉFÉRENCES :

10voto

Bash est une interface de ligne de commande créée il y a plus de vingt-sept ans par Brian Fox en tant que logiciel libre remplaçant le Bourne Shell. Un shell est un type spécifique d'interface de ligne de commande. Bash est "open source", ce qui signifie que tout le monde peut lire le code et suggérer des modifications. Depuis ses débuts, il a été soutenu par une grande communauté d'ingénieurs qui ont travaillé pour en faire un outil incroyable. Bash est le shell par défaut pour Linux et Mac. Pour ces raisons, Bash est le shell le plus utilisé et le plus largement distribué.

Windows dispose d'une interface de ligne de commande différente, appelée Invite de commande. Bien que cette dernière possède de nombreuses fonctionnalités identiques à celles de Bash, Bash est beaucoup plus populaire. En raison de la force de la communauté open source et des outils qu'elle fournit, la maîtrise de Bash est un meilleur investissement que la maîtrise de Command Prompt.

Pour utiliser Bash sur un ordinateur Windows, nous devons télécharger et installer un programme appelé Git Bash. Git Bash (est le Bash pour Windows) nous permet d'accéder facilement à Bash ainsi qu'à un autre outil appelé Git, dans l'environnement Windows.

5voto

Abhijeet C'kar Points 51

À la base, Git est un ensemble de programmes utilitaires en ligne de commande qui sont conçus pour être exécutés dans un environnement de ligne de commande de style Unix. Les systèmes d'exploitation modernes comme Linux et macOS intègrent tous deux des terminaux de ligne de commande Unix. Cela fait de Linux et macOS des systèmes d'exploitation complémentaires pour travailler avec Git. Microsoft Windows utilise plutôt l'invite de commande Windows, un environnement de terminal non Unix.

Qu'est-ce que Git Bash ?

Git Bash est une application pour les environnements Microsoft Windows qui fournit une couche d'émulation pour une expérience de ligne de commande Git. Bash est un acronyme de Bourne Again Shell. Un shell est une application de terminal utilisée pour s'interfacer avec un système d'exploitation par le biais de commandes écrites. Bash est un shell par défaut populaire sur Linux et macOS. Git Bash est un paquet qui installe Bash, certains utilitaires bash courants et Git sur un système d'exploitation Windows.

source : https://www.atlassian.com/git/tutorials/git-bash

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X