结合 mingw 和 git

问题描述 投票:0回答:5

我在 D:\mingw 中安装了 MinGW。我在 C:\Program Files\git 中安装了 Git。我想使用 MinGW 开发/编译并使用 git 进行版本控制。

我想我必须使用正确的路径,但有些路径是硬编码的。就像msys挂载脚本调用/bin/msysmnt.exe

所以我有2个选择: 1.使用git的shell(能够在提示符下显示分支) 2. 使用 mingw(msys) 的 shell - 获得正确的路径

无论我选择哪一个,我都必须让其他功能在其下工作。

git shell mingw
5个回答
28
投票

小更新:自 Git 2.x 发布以来,Git for Windows 基于 MSYS2,并以 32 位和 64 位二进制形式提供。它仍然是一个分叉,不能与真正的 MSYS2 互换。


您必须了解的一件事:msysgit(您正在使用的 git)是 msys 的一个分支,添加了 git 功能。 msys shell 中包含许多 UNIX 工具(有关完整列表,请参阅 msysgit/bin 文件夹)。

也许可以将其他 msys 工具添加到 msysgit bin 文件夹中,但我不会冒险这样做。

有鉴于此,我认为最好将工具链添加到 msysgit 路径(使用 bash 配置文件或 msysgit 树中的任何内容)并使用它。如果缺少特定实用程序,请从 MinGW-msys 树中添加它并希望它能正常工作。

或者,只需使用 cmd.exe 中的 msys-git。从最近的版本开始,它工作得很好(包括 git show、编辑提交消息等......)。为此,请将 /cmd 目录添加到 PATH,然后您就可以使用所需的所有 git 命令。这就是我所做的,因为 msys 是一个累赘,但却是 git 在 Windows 上工作的必要之恶。

更新:在任何类型的 MSYS 下将目录添加到 PATH 的详细说明:

export PATH=/d/MinGW/bin:$PATH

或者黑客地找到 /etc/profile 并更改此部分

if [ $MSYSTEM == MINGW32 ]; then
  export PATH=".:/usr/local/bin:/mingw/bin:/bin:$PATH"
else
  export PATH=".:/usr/local/bin:/bin:/mingw/bin:$PATH"
fi

至:

if [ $MSYSTEM == MINGW32 ]; then
  export PATH=".:/usr/local/bin:/d/MinGW/bin:/bin:$PATH"
else
  export PATH=".:/usr/local/bin:/bin:/mingw/bin:$PATH"
fi

没有更干净的方法,因为 msys-git 人们禁用了 vanilla msys 中的 fstab 功能。

来自尼克的更新(我做了什么让它发挥作用):

我在

C:\Program Files\Git\etc
中创建了名为
bash_profile
的文件。这是文件的内容:

export PATH=$PATH:/d/mingw/bin:/d/mingw/msys/1.0/bin

make 和 gcc 工作了。

msysgit 不附带

bash_profile
,因此更新后不会覆盖它。


16
投票

我通过打开 c:\MinGW\msys .0 tc\profile (不是在记事本中,没有回车符)并添加:

将 Git 放在 MinGW shell 上
export PATH=$PATH:/c/Program\ Files\ \(x86\)/Git/bin

在 x86 系统上,这将是:

export PATH=$PATH:/c/Program\ Files/Git/bin

7
投票

使用msys2。

它是 msys,具有不错的包管理器 (

pacman
) 和构建系统 (
makepkg
),从 arch linux 移植。我有一个 shell,里面有我所有的开发工具和 git 等。


6
投票

更新:

现在 msys 附带了 git 二进制包。

http://sourceforge.net/projects/mingwbuilds/files/external-binary-packages/

旧答案:

如果您使用最新的mingwportableGit,只需将git.exe(从portableGitXXX.7z中提取文件)放入C:\MinGW\msys .0 in\


6
投票

截至今天,只需

pacman -S git
在 msys2 mingw64 shell 中安装 git

© www.soinside.com 2019 - 2024. All rights reserved.