Git Bash的确切含义是什么?

DRA*_*AJI 80 git-bash

Git Bash

过去两天我一直在与Git Bash合作.我现在知道的基本操作,例如commit,push,pull,fetch,和merge.但我仍然不知道Git Bash 本身究竟是什么!

我搜索了很多关于Git Bash的内容,但我看过的所有网站都关注其命令的功能.我的问题仍然没有找到一个好的答案.现在,我想,我是在正确的地方得到这个答案!

Von*_*onC 75

git bash是一个shell,其中:

请参阅" 修复msysGit便携式$HOME位置 ":

在Windows 64上:

C:\Windows\SysWOW64\cmd.exe /c ""C:\Prog\Git\1.7.1\bin\sh.exe" --login -i"
Run Code Online (Sandbox Code Playgroud)

这不同于git-cmd.bat,它在普通DOS命令提示符下提供git命令.

GitHub for Windows(G4W)这样的工具为git提供了不同的shell(包括一个PowerShell)


2015年4月更新:

注意:msysgit/Git for windows 1.9.5中的git bash 是旧的:

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

但随着逐步淘汰msysgit(2015年第四季度)和新的Git For Windows(2015年第二季度),你现在拥有了适用于Windows 2.3.5的Git.
它有一个更新的bash,基于64位msys2项目,独立重写MSYS,基于现代Cygwin(POSIX兼容层)和MinGW-w64,旨在更好地与本机Windows软件互操作.msys2也有自己的安装程序.

git bash现在(使用新的Git For Windows):

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

原始答案(2013年6月)更准确地说,来自msygit wiki:

从历史上看,Windows上的Git仅使用Cygwin正式支持.
为了帮助制作本机Windows版本,该项目基于mingw fork启动.

为了使项目名称的乳白色'汤'更清晰,我们这样说:

  • msysGit - 这个项目的名称,是Git for Windows的构建环境,它发布官方二进制文件
  • MinGW - 是本机Microsoft Windows应用程序的极简主义开发环境.
    它实际上是Microsoft Runtime上非常薄的编译时层; 因此,MinGW程序是真正的Windows程序,没有Unix风格路径或POSIX细节的概念,例如fork()调用
  • MSYS - 是一个Bourne Shell命令行解释器系统,由MinGW(和其他人)使用,过去是从Cygwin 分叉
  • Cygwin - 类似Linux的环境,过去用于构建Git for Windows,现在与msysGit没有任何关系

那么,关于"git bash"的两行描述是:

" Git bash"是包含在"Git for Windows"中的msys shell,是Cygwin(旧版本)的精简版本,其唯一目的是提供足够的POSIX层来运行bash.


提醒:

msysGit是编译Git for Windows的开发环境.它是完整的,在某种意义上你只需要安装msysGit,然后就可以构建Git了.无需安装任何第三方软件.

msysGit不是Git for Windows; 这是一个安装Git的安装程序 - 只有Git.

在" msysgit和Cygwin + git之间的区别? "中查看更多内容.

  • 例如,UNIX Bash和Git Bash有什么区别? (3认同)
  • 我想知道那是什么意思! (2认同)

O.M*_*.Y. 20

我认为问题提问者认为git bash是一个像git initgit checkout这样的命令.Git bash不是命令,它是一个接口.我还假设提问者不是linux用户,因为bash非常受unix/linux世界的欢迎."bash"这个名字是" B ourne A gain SH ell" 的首字母缩写.Bash是一个纯文本命令接口,具有允许运行自动脚本的功能.一个很好的比喻是将bash与Windows7/8中的新PowerShell界面进行比较.一个穷人类比(但更容易被更多人理解的是)的组合命令提示符和来自DOS及早期版本Windows的.BAT(批处理)命令文件.

参考文献:


小智 8

Bash是由Brian Fox创建于27年前的命令行界面,它是Bourne Shell的免费软件替代品。Shell是一种特定的命令行界面。Bash是“开源的”,这意味着任何人都可以阅读代码并提出更改建议。从一开始,它就得到了众多工程师的支持,这些工程师一直致力于使其成为令人难以置信的工具。Bash是Linux和Mac的默认外壳。由于这些原因,Bash是使用最多且分布最广泛的Shell。

Windows有一个不同的命令行界面,称为命令提示符。尽管它具有与Bash相同的许多功能,但Bash更为流行。由于开源社区及其提供的工具的实力,掌握Bash比掌握Command Prompt更好。

要在Windows计算机上使用Bash,我们需要下载并安装一个名为Git Bash的程序。Git Bash(Windows的Bash)使我们能够在Windows环境中轻松访问Bash以及另一个名为Git的工具。


小智 5

Git 的核心是一组命令行实用程序,旨在在 Unix 风格的命令行环境中执行。Linux 和 macOS 等现代操作系统都包含内置的 Unix 命令行终端。这使得 Linux 和 macOS 在使用 Git 时成为互补的操作系统。Microsoft Windows 相反使用 Windows 命令提示符,这是一种非 Unix 终端环境。

什么是 Git Bash?

Git Bash 是一个适用于 Microsoft Windows 环境的应用程序,它为 Git 命令行体验提供模拟层。Bash 是 Bourne Again Shell 的缩写。shell 是一种终端应用程序,用于通过书面命令与操作系统交互。Bash 是 Linux 和 macOS 上流行的默认 shell。Git Bash 是一个在 Windows 操作系统上安装 Bash、一些常见的 bash 实用程序和 Git 的软件包。

来源: https: //www.atlassian.com/git/tutorials/git-bash

  • “Git 是一组命令行实用程序,旨在在 Unix 风格的命令行环境中执行”……确实如此,而且毫不奇怪,考虑到 Git 是由 Linus Torvalds 创建的 (https://en.wikipedia.org) /wiki/Linus_Torvalds) (2认同)