gpt4 book ai didi

git - 结合mingw和git

转载 作者:IT王子 更新时间:2023-10-29 00:51:56 28 4
gpt4 key购买 nike

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

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

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

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

最佳答案

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


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

或许可以向 msysgit bin 文件夹中添加额外的 msys 工具,但我不会为此冒险。

鉴于此,我认为最好将您的工具链添加到 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

或 hackishly 找到/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 功能。

Nick 的更新(我做了什么让它起作用):

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

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

make 和 gcc 工作。

bash_profile 没有随 msysgit 一起提供,因此您不会在更新时覆盖它。

关于git - 结合mingw和git,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5648330/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com