从Windows运行Git通过Cygwin

jh_*_*jh_ 32 git cygwin

我最近开始使用Cygwin用于其他目的,并且已经在我的PC上安装了Git.我知道我可以运行可执行文件并将Git安装到Cygwin中,但是因为我已经安装了它,所以我希望Cygwin只使用我的Windows安装.我曾尝试研究如何以各种方式重定向路径,但没有成功,有人可以帮助我吗?

Von*_*onC 55

我确认git和msysgit可以在同一台计算机上共存,如" 哪个GIT版本使用cygwin或msysGit或两者兼而有之? "中所述.

  1. Git for Windows(msysgit)将在自己的shell中运行(dos with git-cmd.bat或bash with Git Bash.vbs)
    更新2016:msysgit已过时,而新的Git for Windows现在使用msys2

  2. 安装其软件包后,Git on Cygwin 将在自己的cygwin bash shell中运行.

Cygwin上的git包选择

  1. 最后,自2016年第3季度和"Windows 10周年更新"以来,您可以在bash中使用Git(实际的Ubuntu(!)bash).

http://www.omgubuntu.co.uk/wp-content/uploads/2016/08/bash-1.jpg

在那里,你可以做一个sudo apt-get install git-core,并开始使用混帐上目前无论是WSL容器的"原生"的文件系统上项目源(见下文),或通过托管的Windows的文件系统/mnt/c/...,/mnt/d/...目录层次结构.

特别适用于WindowsWSL Bash(适用于Linux的Windows子系统):

  • 它是一个轻量级的虚拟化容器(技术上,一个"吊桥"微微进程,
  • 托管未经修改的"无头"Linux发行版(即Ubuntu减去内核),
  • 它可以执行基于终端的命令(如果安装了用于WindowsX服务器,甚至可以执行X服务器客户端应用程序),
  • 仿真的访问Windows文件系统(这意味着,除了降低性能,编码为文件DrvFs仿真文件系统可能无法正常使用一样的文件在本地 VolFs文件系统).


小智 13

我可以从个人经验告诉你这是一个坏主意.本机Windows程序无法接受Cygwin路径.例如,使用Cygwin,您可以运行命令

grep -r --color foo /opt
Run Code Online (Sandbox Code Playgroud)

没有问题.用Cygwin /代表根目录.原生Windows程序没有这个概念,如果以这种方式调用,可能会失败.除非别无选择,否则不应混用Cygwin和Native Windows程序.

卸载你拥有的Git并安装Cygwin git包,省去头痛.

  • 没有必要卸载现有的Git; 只需安装Cygwin git包,就可以使用Cygwin bash命令行中的`git`命令. (10认同)